← Back to team overview

canonical-ci-engineering team mailing list archive

CI Engine Metrics

 

All,

I've started a google doc[1] with some proposed metrics we would want to
gather.  There are obviously holes there since I don't know the fine
details of some of the components.

What sort of metrics are we interested in, you might ask.  Take Andy's
recent work to remove the restish pieces and clean up the code.  It
would be nice to say "Overall ticket lifetime went from 789 seconds to
123 seconds with this change".

The solution I've come to[2] is a Metric class that behaves similarly to a
stopwatch.  Creating an instance of the class starts the stopwatch.  You
stop the watch and send the metric with Metric.stop(). You can measure
parts of your code between Metric() and Metric.stop() by using the optional
function Metric.lap() which measures from start or previous lap() call
to the current lap() call.  There is also Metric.republish(name=None)
which allows for metrics to be sent to different buckets on the txstatsd
server.

Thanks,
Joe

[1] https://docs.google.com/a/canonical.com/document/d/1qAVByPQ-kPyeA6-WMKKB2zwQQxkf4ZNZWSdtn4xxX60/edit
[2] https://code.launchpad.net/~joetalbott/uci-engine/add_txstatsd/+merge/215489