openstack-health/test
mccasland, trevor (tm2086) 741a457f72 Add run time graph for jobs
Motivation for this change:
  By adding the run time graph to the job's page it will raise
  awareness to users of changes in run times among jobs.
  By adding the scatter graph to the job's page it can raise awareness
  of the run time deviation.

New behavior:
  A linear and scatter chart called Job Run Time is available in the jobs
  view. It gathers run_time data from the job_data objects provided by
  the timedelta in the response of /runs/key/<key>/<value> limited
  by the values in the resolution dropdown.
  The original response of this API call is wrapped in a 'data' property
  and the additional information to support drawing the scatter chart on
  the canvas is added to a new dict property called 'numeric'.

NOTE:
  * The methods in run_aggregator were derived from [1] and [2]
  * An experiment was done to see which implementation would
    result in the lowest load time and the results for the job
    'tempest-full' for 2 weeks and 1 month periods are as follows:
    - latest patch with 1 db call
        2.21s - 2 weeks
        3.40s - 1 month

    - older patch with 2 db calls
        7.86s - 2 weeks
        10.16s - 1 month

completes queens priority "Job duration graph in o-h" from:
  https://etherpad.openstack.org/p/qa-queens-priorities

[1] https://review.openstack.org/#/c/370913/4
[2] 4db9a61471/openstack_health/test_run_aggregator.py (L70-L90)
Change-Id: Ib5196d86b6b5efa0083d4aa4dd28f1fac3493560
2018-06-29 14:57:05 -05:00
..
e2e Apply quotes rule for js files 2016-01-27 17:04:58 +09:00
unit Add run time graph for jobs 2018-06-29 14:57:05 -05:00
karma.conf.js Add support for HeadlessChrome in karma 2018-03-27 15:05:26 -05:00
protractor.conf.js Run unit tests in Chrome instead of PhantomJS 2016-03-15 15:29:26 -06:00