Check that comment isn't empty in TeamLabelInference#applicable?
What does this MR do and why?
I noticed that we recorded processor usage with duration: 0
in Clickhouse and I realized that Triage::TeamLabelInference
would return a nil
result if the comment to be posted would be nil
or empty.
Triage::Telemetry.record_processor_execution
would record the event even if result
was nil
, thus we ended up with more events in Clickhouse (82 rows in my example) than in the service logs (9 rows in my example):
Clickhouse | Service logs |
---|---|
This MR fixes both problems:
- Check the
nil
/empty message inTriage::TeamLabelInference#applicable?
directly - Don't send telemetry when
result
isnil
so that it's consistent with the cases when we log an event
Expected impact & dry-runs
These are strongly recommended to assist reviewers and reduce the time to merge your change.
See https://gitlab.com/gitlab-org/quality/triage-ops/-/tree/master/doc/scheduled#testing-policies-with-a-dry-run on how to perform dry-runs for new policies.
See https://gitlab.com/gitlab-org/quality/triage-ops/-/blob/master/doc/reactive/best_practices.md#use-the-sandbox-to-test-new-processors on how to make sure a new processor can be tested.
Action items
-
If adding environment variables for reactive processors, update config/triage-web.yaml
and.gitlab/ci/triage-web.yml
-
(If applicable) Add documentation to the handbook pages for Triage Operations => - (If applicable) Identify the affected groups and how to communicate to them:
-
/cc @ person_or_group
=> -
Relevant Slack channels => -
Engineering week-in-review
-