The Dev Admin menu
Review The Dev Admin menu
If you have the Admin role, you have access to the Dev Admin menu.
Some of the options are useful even when you're not a Dev.
Config -> As JSON
This page shows almost all application settable parameters.
Almost means if the config option starts with "omnivore" it shows. Otherwise it doesn't.
This page can be used to quickly verify:
- job pools allocation
- job selection options
- order poll frequency
- default webhooks
- other stuff
Sites with issues
This page lists sites that have either:
- issues connecting to the retailer backend
- issues connecting to the marketplace, currently ebay only
This information is checked and updated twice each day by a job named STATUS_CHECK.
If a site has connection issues, after 8 days it becomes "parked" https://www.citybeachsoftware.com/wiki/index.php/Parked_sites ie the frequency of product imports and order polls is decreased.
A parked site will have the value "13 14 15 ? * SAT" in the Full Product Import Cron Expression in Settings -> Administration -> Advanced Configuration
At the same time, an error message will be displayed on the dashboard, something about "restricted account".
If a site was parked due to connection errors and then the error goes away, the site will be automatically un-parked and receives a cron expression of "0 0 12 ? * SUN"
Jobs
The jobs link in the menu is the entry point to a few pages providing information about active and completed jobs.
Control allows us to pause and un-pause the server or cluster, eg: in preparation for a release or restart
Active shows what jobs are active in the cluster, ie either processing (running) or waiting to be processed (pending, selected and continuing)
Depending on context, a large number of active jobs might mean an issue in the system, but up to tens of thousands of active jobs is usually ok.
List shows the content of the queued_job table.
Activity shows what jobs have happened in a certain period of time. Zero jobs or a very small number in the past hour might mean an issue in the system.
Pool Stats this one is for Devs
Info same
Create this page allows creation of jobs for a certain retailer or a bunch. Most useful for the Bulk Insert option. Extra care is required if the job needs the extra info, best is to copy from an existing job and adjust the content.
Logging
This is for Devs. It allows changing the logging level at runtime, so you don't have to release if you need more logging.
There's a gotcha for Domain classes only, you'll need to manually append grails.app.domain to the name shown i the page, ie for Product, the proper name is grails.app.domain.com.machinehelix.omnivore.Product not just com.machinehelix.omnivore.Product but for some reason it doesn't get that correctly.
Quartz
This is for Devs.
If a job shows ERROR in the Trigger state column, then the server needs to be restarted and the cause of the error investigated.
Sometimes it just happens because Quartz will try to start the job before a service used inside is properly instantiated.
Hazelcast
For devs.
Webhooks
TODO
Mixed stuff
TODO
Build version
This one is just a display only value. It allows us to see if the application version we're looking at is the latest one, and what server in the cluster is servicing the request.