-
Notifications
You must be signed in to change notification settings - Fork 21
Feat: metrics summary #1646
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Feat: metrics summary #1646
Conversation
Using a match case instead of if-elif won't trigger the complexity warning later on
|
|
||
|
|
||
| There were {{ total_labs }} labs registered and testing as follows: | ||
| {% for lab_key, lab_values in lab_maps.items() %} {{ lab_key }} ({{ lab_origins[lab_key] }}) - {{ lab_values["builds"] }} builds, {{ lab_values["boots"] }} boots, {{ lab_values["tests"] }} tests; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd use sorted(lab_map.items() so it's stable (sorted by key)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good point. I couldn't use sorted() itself because jinja doesn't support it, but I found that there is the | sort filter that is basically the same.
When I checked that filter I also found that I could replace total_labs with just lab_maps | length (jinja doesn't support len() either)
6eb81ec to
a46ae4d
Compare
|
Issues and incidents are the complicated part I believe. For issues we could start only with the build ones and deploy the report with that info. And then be clear on the language that incidents refers to issues. Frequency could be weekly at first to iterate faster? And for a limited audience I guess. |
|
Looks good. A few things that confuse me, the use of 'incidents' and 'regressions'.
So "5 new regressions" + "25 recurring incidents" = "30 total incidents" The total then is a bit confusing, I see "X new incidents" listed in the breakdown and the total. I had a little play with the report and changed the formatting: I know its just draft, but I see there is setup_jinja_template() already in the codebase, maybe this could be reused? Or, if not maybe the generate_metrics_report() can be moved into notifications.py |
I didn't want to add this code to |
What about something like this: - 5 new regressions (issues that had their first incident in the given interval).
-
-
- 30 total incidents in this interval, being:
- 2 build incidents
- 5 boot incidents
- 23 test incidents
+ 20 build incidents in total, 3 of which are new regressions (the first incident of an issue)(made up numbers unrelated to the prior example) I don't want to just say "failures" because I'm not gathering builds that failed without any related issue. And is it useful to separate these incidents/regressions by origin? Btw thanks @bhcopeland for the formatting suggestion. I'll make some modifications and push changes today |
a46ae4d to
a099c20
Compare
a099c20 to
158ce66
Compare
Adds a metrics summary notification (just the template for now, WIP)
Example output: