Closed achamayou closed 4 years ago
I think it's a good idea, as it avoids having to play games with gh-pages. I assume this would always edit the first post in this special issue instead of adding new comments.
Yeah that's what we already do in PRs since https://github.com/jumaffre/cimetrics/pull/71
Definitely the most minimal way to keep track of metrics on master - I really like it! A few implementation considerations:
metrics.yml
?) as it would otherwise be difficult to discover the issue number from subsequent builds if it's first created by cimetrics.pr:
span: 20
status:
label: cimetric_status
span: 100
Something like that?
achamayou-patch-9@588 aka 20200524.1 vs master ewma over 48 builds from 2 to 586
There is an early draft for this here https://github.com/jumaffre/cimetrics/pull/77, which is what produced the comment above.
There's a few things to sort out:
Thoughts welcome etc.
The reason we have so little master history is because of the recent introduction of the __complete flag, in case anyone's wondering.
Some thoughts now that this is in CCF as https://github.com/microsoft/CCF/issues/1063:
Really good idea. Some thoughts after seeing this on https://github.com/microsoft/CCF/issues/1063, with an eye to how we actually discuss the results this shows:
There's some excellent stuff here https://github.com/rob-med/awesome-TS-anomaly-detection, in particular https://arundo-adtk.readthedocs-hosted.com/en/stable/notebooks/demo.html#LevelShiftAD
This may be useful too: https://klabum.github.io/rrcf/
The detection could probably do with a bit of tweaking before we use it to generate the ticks.
So aligning the window size with the one we use for ewma helps a lot, and so does lowering the confidence a bit:
I think the auto-detection is good enough, so the next items on are I think:
Specifying the detection branch doesn't seem all that useful, it's easy enough to modify the config per-branch, like we've done with pbft, so I'm going to call that solved.
There's more to do for long term history, as @eddyashton suggested, but I think that's distinct from having the monitoring issue cover an arbitrarily large window usefully, which I think we'll basically have once those two things are done.
With the 0.2.20 release, I'm going to call monitoring complete. This is what it looks like in CCF: https://github.com/microsoft/CCF/issues/1063
I was wondering how we could replicate the history page we have historically done with jupyter, and I had an idea.
Since the API to post to issues and to comments is really the same, how about configuring a given issue as the “performance monitoring” issue for the target branch (master), now that we have a tend view?
When a build happens there, we still plot (without a branch value, but that’s just skipping a bit of logic), and push to the “performance monitoring” issue!
It’s a bit clunky, sure, but it’s also really easy to do!
It’s also a nice place to push links to suspicious looking builds once we have anomaly detection? Although come to think of it, it would be better for that to simply create tickets, so they can be commented against etc.
@jumaffre, @letmaik, what do you think?