fix(crashtracking): honor proxy environment variables - #2462
Conversation
The crash receiver inherits proxy environment variables from language tracers, but crashtracker linked libdd-common without its proxy feature. Direct telemetry and Errors Tracking uploads therefore bypassed configured egress proxies.
📚 Documentation Check Results📦
|
🔒 Cargo Deny Results📦
|
|
✅ All CI checks and tests passed. 🎉 All green!🧪 All tests passed 🎯 Code Coverage (details) 🔗 Commit SHA: 137bd19 | Docs | View more details | Give us feedback! |
BenchmarksComparisonBenchmark execution time: 2026-09-03 19:42:45 Comparing candidate commit 137bd19 in PR branch Found 0 performance improvements and 0 performance regressions! Performance is the same for 1 metrics, 0 unstable metrics.
|
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 137bd19 | 1788463457 | BridgeAR/2026-09-03-native-crash-proxy |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| receiver_entry_point/report/2644 | execution_time | 4.399ms | 4.443ms ± 0.032ms | 4.436ms ± 0.012ms | 4.448ms | 4.515ms | 4.569ms | 4.581ms | 3.29% | 2.062 | 4.825 | 0.71% | 0.002ms | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| receiver_entry_point/report/2644 | execution_time | [4.438ms; 4.447ms] or [-0.099%; +0.099%] | None | None | None |
Baseline
Baseline benchmark details
Group 1
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 13c5242 | 1788458243 | main |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| receiver_entry_point/report/2644 | execution_time | 4.406ms | 4.449ms ± 0.020ms | 4.447ms ± 0.010ms | 4.457ms | 4.486ms | 4.515ms | 4.534ms | 1.96% | 1.153 | 2.718 | 0.44% | 0.001ms | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| receiver_entry_point/report/2644 | execution_time | [4.447ms; 4.452ms] or [-0.061%; +0.061%] | None | None | None |
Artifact Size Benchmark Reportaarch64-alpine-linux-musl
aarch64-unknown-linux-gnu
libdatadog-x64-windows
libdatadog-x86-windows
x86_64-alpine-linux-musl
x86_64-unknown-linux-gnu
|
What does this PR do?
Enables
libdd-common's existing proxy connector for crash report uploads and adds an integration test for direct telemetry and Errors Tracking requests.Motivation
Language tracers pass proxy environment variables to the isolated crash receiver, but
libdd-crashtrackerlinkedlibdd-commonwithout itshyper-proxyfeature. Direct uploads therefore bypassed configured egress proxies.How to test the change?
cargo test -p libdd-crashtracker --test proxy direct_crash_requests_use_https_proxy -- --exactcargo test -p libdd-crashtracker --features libdd-crashtracker/generate-unit-test-files -- --test-threads=1Refs: DataDog/dd-trace-js#10121