-
Notifications
You must be signed in to change notification settings - Fork 10
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
Use send_with_retry in the trace exporter #871
base: main
Are you sure you want to change the base?
Conversation
f71e4f1
to
d085821
Compare
d085821
to
e8d1c90
Compare
BenchmarksComparisonBenchmark execution time: 2025-02-14 13:13:59 Comparing candidate commit 3b5fba7 in PR branch Found 0 performance improvements and 0 performance regressions! Performance is the same for 52 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
BaselineOmitted due to size. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #871 +/- ##
==========================================
- Coverage 71.66% 71.66% -0.01%
==========================================
Files 324 324
Lines 48248 48299 +51
==========================================
+ Hits 34576 34612 +36
- Misses 13672 13687 +15
|
let endpoint = Endpoint { | ||
url: self.output_format.add_path(&self.endpoint.url), | ||
..self.endpoint.clone() | ||
}; | ||
let send_data = SendData::new(size, tracer_payload, header_tags, &endpoint); | ||
let mut headers: HashMap<&str, String> = header_tags.into(); | ||
headers.insert(DATADOG_SEND_REAL_HTTP_STATUS_STR, "1".to_string()); |
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.
❓ what does 1 mean here?
let send_data_result = send_data.send().await; | ||
// Send traces to the agent | ||
let result = | ||
send_with_retry(&endpoint, payload, &headers, &strategy, None).await; |
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.
❓ are we capturing telemetry like
- max retry count
- retry attempt
- last failure reason?
What does this PR do?
Use
send_with_retry
in trace exporter to remove ownership constraint.Motivation
Removing ownership constraint is required to remove incorrect lifetime assumption in the trace exporter.
Additional Notes
Some minor refactors were needed:
Commits although not atomic separate the changes into areas affected, so reviewing by commit can help by breaking down the changes.
How to test the change?
Describe here in detail how the change can be validated.