Timing stats from the queue
Investigate problems involved with providing:
- Queue latency stats
- sum of all job timeouts in the queue divided by the number of devices.
- provide a custom query which would show actual duration of jobs which are similar to those in the queue.
- Live data to inform the resource management issue
- an XMLRPC API / REST API which can be used to justify the expense of purchasing more hardware of specific device types.
- Presentation done by others, data available from LAVA.
- Also add the job submit time and starting time into the job log file as a logging action / metadata to support other queries.
Producing the stats may take quite some time if the yaml has to be loaded and parsed for each job. Investigate caching data from the job definitions during submission. Device tags could also be a problem in calculating the stats.
Minimise the impact on a busy server of calculating the data about how busy is the server. Possibly use an external site which monitors the reactobus data instead of needing new queries on the server (with the exception of custom queries which are offered to the admin but not executed unless requested).
Migrated from https://projects.linaro.org/browse/LAVA-596