-
Notifications
You must be signed in to change notification settings - Fork 16
refactor(libdd-data-pipeline): health metrics #1433
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?
Conversation
BenchmarksComparisonBenchmark execution time: 2026-01-29 11:36:31 Comparing candidate commit b22214f in PR branch Found 0 performance improvements and 0 performance regressions! Performance is the same for 57 metrics, 2 unstable metrics. CandidateCandidate benchmark detailsGroup 1
Group 2
Group 3
Group 4
Group 5
Group 6
Group 7
Group 8
Group 9
Group 10
Group 11
Group 12
Group 13
Group 14
Group 15
Group 16
Group 17
Group 18
Group 19
BaselineOmitted due to size. |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #1433 +/- ##
==========================================
+ Coverage 70.96% 71.07% +0.10%
==========================================
Files 421 422 +1
Lines 68438 68640 +202
==========================================
+ Hits 48567 48784 +217
+ Misses 19871 19856 -15
🚀 New features to boost your workflow:
|
Artifact Size Benchmark Reportaarch64-alpine-linux-musl
aarch64-apple-darwin
aarch64-unknown-linux-gnu
libdatadog-x64-windows
libdatadog-x86-windows
x86_64-alpine-linux-musl
x86_64-apple-darwin
x86_64-unknown-linux-gnu
|
| .unwrap_or_else(|_| tag!("type", "unknown")); | ||
| self.emit_metric( | ||
| HealthMetric::Count(health_metrics::TRANSPORT_TRACES_FAILED, 1), | ||
| Some(vec![&resp_tag, &type_tag]), |
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.
Why were we sending the status code in two different tags, and why is it ok that we're only sending it in one tag now?
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 don't know. I didn't catch that when refactoring, I just saw there was a codepath for the status code and handled it in the refactored types. And I immediately can't figure out if it's relevant or not, I'll look for some kind of spec.
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'm not sure why we'd need to send redundant tags, hopefully it was a mistake in the initial implementation. But confirm the correct behavior before merging.
ajgajg1134
left a comment
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.
Overall looks good to me! test coverage seems appropriate, just one small question about reusing the emitter
|
/mergegate trigger |
|
View all feedbacks in Devflow UI.
Merge gate status on libdatadog #1433 synced on DB: success |
|
/merge |
|
View all feedbacks in Devflow UI.
The expected merge time in
Tests failed on this commit 431b4ce: What to do next?
|
📚 Documentation Check Results📦
|
🔒 Cargo Deny Results📦
|
What does this PR do?
Refactor health metrics emission via common API.
Motivation
Logic was duplicated and would have required to be duplicated again if another usecase arose. Now the core logic can be integrated elsewhere more easiely.
Additional Notes
I don't have the full context of this part of the code, I may have blindspots or problems in the implementation.
How to test the change?
I (mostly AI) added a bunch of tests (maybe too much of them even ?) to validate the changes.