feat(otel): add support for OTLP trace export#1641
Conversation
Clippy Allow Annotation ReportComparing clippy allow annotations between branches:
Summary by Rule
Annotation Counts by File
Annotation Stats by Crate
About This ReportThis report tracks Clippy allow annotations for specific rules, showing how they've changed in this PR. Decreasing the number of these annotations generally improves code quality. |
BenchmarksComparisonBenchmark execution time: 2026-03-26 23:22:58 Comparing candidate commit 3b26275 in PR branch Found 6 performance improvements and 2 performance regressions! Performance is the same for 54 metrics, 0 unstable metrics.
|
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| redis/obfuscate_redis_string | execution_time | 33.808µs | 34.428µs ± 1.117µs | 33.921µs ± 0.046µs | 33.987µs | 36.845µs | 36.904µs | 37.330µs | 10.05% | 1.707 | 0.939 | 3.24% | 0.079µs | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| redis/obfuscate_redis_string | execution_time | [34.274µs; 34.583µs] or [-0.450%; +0.450%] | None | None | None |
Group 2
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| single_flag_killswitch/rules-based | execution_time | 190.409ns | 192.861ns ± 1.745ns | 192.763ns ± 1.312ns | 193.751ns | 196.134ns | 198.226ns | 199.584ns | 3.54% | 0.950 | 1.011 | 0.90% | 0.123ns | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| single_flag_killswitch/rules-based | execution_time | [192.620ns; 193.103ns] or [-0.125%; +0.125%] | None | None | None |
Group 3
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| two way interface | execution_time | 13.947µs | 14.161µs ± 0.071µs | 14.150µs ± 0.035µs | 14.194µs | 14.274µs | 14.393µs | 14.613µs | 3.27% | 1.803 | 8.640 | 0.50% | 0.005µs | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| two way interface | execution_time | [14.151µs; 14.171µs] or [-0.070%; +0.070%] | None | None | None |
Group 4
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| sql/obfuscate_sql_string | execution_time | 289.564µs | 290.135µs ± 0.702µs | 290.047µs ± 0.157µs | 290.209µs | 290.502µs | 291.839µs | 298.439µs | 2.89% | 8.817 | 97.397 | 0.24% | 0.050µs | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| sql/obfuscate_sql_string | execution_time | [290.037µs; 290.232µs] or [-0.034%; +0.034%] | None | None | None |
Group 5
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| concentrator/add_spans_to_concentrator | execution_time | 14.825ms | 14.856ms ± 0.019ms | 14.853ms ± 0.011ms | 14.865ms | 14.884ms | 14.904ms | 14.974ms | 0.81% | 2.043 | 9.306 | 0.13% | 0.001ms | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| concentrator/add_spans_to_concentrator | execution_time | [14.854ms; 14.859ms] or [-0.017%; +0.017%] | None | None | None |
Group 6
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| benching string interning on wordpress profile | execution_time | 161.863µs | 162.521µs ± 0.360µs | 162.470µs ± 0.134µs | 162.606µs | 162.932µs | 163.769µs | 166.008µs | 2.18% | 5.209 | 44.261 | 0.22% | 0.025µs | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| benching string interning on wordpress profile | execution_time | [162.471µs; 162.570µs] or [-0.031%; +0.031%] | None | None | None |
Group 7
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| benching serializing traces from their internal representation to msgpack | execution_time | 13.770ms | 13.810ms ± 0.029ms | 13.806ms ± 0.015ms | 13.823ms | 13.843ms | 13.932ms | 13.992ms | 1.35% | 2.673 | 11.638 | 0.21% | 0.002ms | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| benching serializing traces from their internal representation to msgpack | execution_time | [13.807ms; 13.814ms] or [-0.029%; +0.029%] | None | None | None |
Group 8
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| normalization/normalize_trace/test_trace | execution_time | 242.973ns | 254.048ns ± 11.762ns | 250.721ns ± 4.591ns | 256.279ns | 286.642ns | 293.412ns | 294.695ns | 17.54% | 2.016 | 3.592 | 4.62% | 0.832ns | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| normalization/normalize_trace/test_trace | execution_time | [252.418ns; 255.678ns] or [-0.642%; +0.642%] | None | None | None |
Group 9
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| profile_add_sample_frames_x1000 | execution_time | 4.304ms | 4.309ms ± 0.003ms | 4.308ms ± 0.001ms | 4.309ms | 4.312ms | 4.314ms | 4.339ms | 0.71% | 5.752 | 55.796 | 0.07% | 0.000ms | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| profile_add_sample_frames_x1000 | execution_time | [4.308ms; 4.309ms] or [-0.009%; +0.009%] | None | None | None |
Group 10
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| benching deserializing traces from msgpack to their internal representation | execution_time | 51.499ms | 51.721ms ± 0.661ms | 51.614ms ± 0.058ms | 51.668ms | 51.800ms | 56.363ms | 57.247ms | 10.91% | 6.762 | 47.319 | 1.27% | 0.047ms | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| benching deserializing traces from msgpack to their internal representation | execution_time | [51.629ms; 51.812ms] or [-0.177%; +0.177%] | None | None | None |
Group 11
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| credit_card/is_card_number/ | execution_time | 3.892µs | 3.912µs ± 0.002µs | 3.911µs ± 0.001µs | 3.913µs | 3.915µs | 3.917µs | 3.919µs | 0.19% | -2.283 | 21.163 | 0.06% | 0.000µs | 1 | 200 |
| credit_card/is_card_number/ | throughput | 255177804.142op/s | 255643568.212op/s ± 158179.835op/s | 255662864.969op/s ± 76864.199op/s | 255729543.156op/s | 255815173.110op/s | 255844072.666op/s | 256943064.853op/s | 0.50% | 2.316 | 21.477 | 0.06% | 11185.003op/s | 1 | 200 |
| credit_card/is_card_number/ 3782-8224-6310-005 | execution_time | 78.976µs | 79.655µs ± 0.379µs | 79.627µs ± 0.234µs | 79.832µs | 80.336µs | 80.727µs | 80.930µs | 1.64% | 0.691 | 0.286 | 0.48% | 0.027µs | 1 | 200 |
| credit_card/is_card_number/ 3782-8224-6310-005 | throughput | 12356407.028op/s | 12554419.191op/s ± 59611.876op/s | 12558633.133op/s ± 36888.811op/s | 12601682.325op/s | 12635338.772op/s | 12654608.737op/s | 12662044.016op/s | 0.82% | -0.666 | 0.230 | 0.47% | 4215.196op/s | 1 | 200 |
| credit_card/is_card_number/ 378282246310005 | execution_time | 72.323µs | 72.983µs ± 0.356µs | 72.943µs ± 0.239µs | 73.196µs | 73.534µs | 74.068µs | 74.229µs | 1.76% | 0.667 | 0.713 | 0.49% | 0.025µs | 1 | 200 |
| credit_card/is_card_number/ 378282246310005 | throughput | 13471794.748op/s | 13702086.749op/s ± 66534.118op/s | 13709359.235op/s ± 45090.841op/s | 13751251.127op/s | 13801817.147op/s | 13812990.744op/s | 13826952.879op/s | 0.86% | -0.634 | 0.630 | 0.48% | 4704.673op/s | 1 | 200 |
| credit_card/is_card_number/37828224631 | execution_time | 3.895µs | 3.912µs ± 0.003µs | 3.912µs ± 0.001µs | 3.913µs | 3.916µs | 3.918µs | 3.919µs | 0.18% | -1.041 | 8.956 | 0.06% | 0.000µs | 1 | 200 |
| credit_card/is_card_number/37828224631 | throughput | 255198738.638op/s | 255643170.068op/s ± 165975.192op/s | 255648244.013op/s ± 87533.430op/s | 255735086.860op/s | 255861918.379op/s | 255961872.801op/s | 256747452.582op/s | 0.43% | 1.061 | 9.082 | 0.06% | 11736.218op/s | 1 | 200 |
| credit_card/is_card_number/378282246310005 | execution_time | 69.048µs | 69.633µs ± 0.288µs | 69.546µs ± 0.182µs | 69.821µs | 70.167µs | 70.354µs | 70.948µs | 2.02% | 1.015 | 1.434 | 0.41% | 0.020µs | 1 | 200 |
| credit_card/is_card_number/378282246310005 | throughput | 14094852.090op/s | 14361155.795op/s ± 59232.133op/s | 14379073.416op/s ± 37751.020op/s | 14406930.479op/s | 14431064.822op/s | 14451144.441op/s | 14482712.218op/s | 0.72% | -0.985 | 1.311 | 0.41% | 4188.344op/s | 1 | 200 |
| credit_card/is_card_number/37828224631000521389798 | execution_time | 52.232µs | 52.308µs ± 0.034µs | 52.307µs ± 0.019µs | 52.322µs | 52.373µs | 52.407µs | 52.447µs | 0.27% | 0.901 | 1.631 | 0.07% | 0.002µs | 1 | 200 |
| credit_card/is_card_number/37828224631000521389798 | throughput | 19066947.030op/s | 19117434.121op/s ± 12489.939op/s | 19118038.105op/s ± 7076.077op/s | 19125741.917op/s | 19134861.773op/s | 19140754.257op/s | 19145452.691op/s | 0.14% | -0.896 | 1.617 | 0.07% | 883.172op/s | 1 | 200 |
| credit_card/is_card_number/x371413321323331 | execution_time | 5.708µs | 5.848µs ± 0.064µs | 5.849µs ± 0.043µs | 5.887µs | 5.967µs | 6.008µs | 6.041µs | 3.28% | 0.342 | -0.099 | 1.09% | 0.005µs | 1 | 200 |
| credit_card/is_card_number/x371413321323331 | throughput | 165528745.277op/s | 171016153.316op/s ± 1864564.061op/s | 170956527.861op/s ± 1272646.628op/s | 172314535.904op/s | 173522714.867op/s | 174413795.159op/s | 175205402.720op/s | 2.49% | -0.284 | -0.164 | 1.09% | 131844.589op/s | 1 | 200 |
| credit_card/is_card_number_no_luhn/ | execution_time | 3.895µs | 3.912µs ± 0.003µs | 3.912µs ± 0.002µs | 3.914µs | 3.916µs | 3.918µs | 3.921µs | 0.23% | -1.011 | 7.624 | 0.07% | 0.000µs | 1 | 200 |
| credit_card/is_card_number_no_luhn/ | throughput | 255050183.143op/s | 255628176.180op/s ± 174528.073op/s | 255633944.190op/s ± 111632.127op/s | 255742542.778op/s | 255847753.360op/s | 255919346.269op/s | 256753588.350op/s | 0.44% | 1.029 | 7.736 | 0.07% | 12340.998op/s | 1 | 200 |
| credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 | execution_time | 63.769µs | 64.383µs ± 0.183µs | 64.382µs ± 0.105µs | 64.485µs | 64.676µs | 64.840µs | 64.992µs | 0.95% | 0.101 | 0.668 | 0.28% | 0.013µs | 1 | 200 |
| credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 | throughput | 15386521.250op/s | 15532234.737op/s ± 44214.078op/s | 15532208.129op/s ± 25368.957op/s | 15558245.559op/s | 15599711.892op/s | 15641045.536op/s | 15681564.522op/s | 0.96% | -0.079 | 0.667 | 0.28% | 3126.407op/s | 1 | 200 |
| credit_card/is_card_number_no_luhn/ 378282246310005 | execution_time | 57.811µs | 58.288µs ± 0.240µs | 58.313µs ± 0.119µs | 58.406µs | 58.646µs | 58.950µs | 59.023µs | 1.22% | 0.172 | 0.184 | 0.41% | 0.017µs | 1 | 200 |
| credit_card/is_card_number_no_luhn/ 378282246310005 | throughput | 16942443.288op/s | 17156486.739op/s ± 70675.110op/s | 17148918.945op/s ± 35089.088op/s | 17192847.986op/s | 17273844.490op/s | 17284436.878op/s | 17297650.979op/s | 0.87% | -0.145 | 0.144 | 0.41% | 4997.485op/s | 1 | 200 |
| credit_card/is_card_number_no_luhn/37828224631 | execution_time | 3.894µs | 3.911µs ± 0.003µs | 3.911µs ± 0.002µs | 3.913µs | 3.916µs | 3.919µs | 3.922µs | 0.26% | -0.464 | 6.241 | 0.07% | 0.000µs | 1 | 200 |
| credit_card/is_card_number_no_luhn/37828224631 | throughput | 255001347.309op/s | 255669042.472op/s ± 190989.656op/s | 255676260.460op/s ± 106133.420op/s | 255774762.964op/s | 255932398.135op/s | 256003454.990op/s | 256814110.976op/s | 0.45% | 0.482 | 6.326 | 0.07% | 13505.008op/s | 1 | 200 |
| credit_card/is_card_number_no_luhn/378282246310005 | execution_time | 54.516µs | 54.826µs ± 0.227µs | 54.740µs ± 0.111µs | 54.970µs | 55.253µs | 55.646µs | 55.806µs | 1.95% | 1.471 | 2.680 | 0.41% | 0.016µs | 1 | 200 |
| credit_card/is_card_number_no_luhn/378282246310005 | throughput | 17919220.156op/s | 18239740.795op/s ± 74910.736op/s | 18268195.984op/s ± 36807.988op/s | 18293397.456op/s | 18314340.405op/s | 18326667.252op/s | 18343076.882op/s | 0.41% | -1.440 | 2.525 | 0.41% | 5296.989op/s | 1 | 200 |
| credit_card/is_card_number_no_luhn/37828224631000521389798 | execution_time | 52.153µs | 52.290µs ± 0.061µs | 52.287µs ± 0.030µs | 52.320µs | 52.359µs | 52.415µs | 52.672µs | 0.73% | 2.103 | 13.050 | 0.12% | 0.004µs | 1 | 200 |
| credit_card/is_card_number_no_luhn/37828224631000521389798 | throughput | 18985503.678op/s | 19124168.033op/s ± 22224.244op/s | 19125039.408op/s ± 11104.237op/s | 19135931.467op/s | 19156266.150op/s | 19172488.246op/s | 19174476.854op/s | 0.26% | -2.066 | 12.797 | 0.12% | 1571.491op/s | 1 | 200 |
| credit_card/is_card_number_no_luhn/x371413321323331 | execution_time | 5.704µs | 5.830µs ± 0.058µs | 5.832µs ± 0.036µs | 5.866µs | 5.931µs | 5.963µs | 5.978µs | 2.51% | 0.092 | -0.235 | 0.99% | 0.004µs | 1 | 200 |
| credit_card/is_card_number_no_luhn/x371413321323331 | throughput | 167277127.569op/s | 171546383.430op/s ± 1697900.219op/s | 171469663.913op/s ± 1067624.087op/s | 172575909.920op/s | 174310919.286op/s | 175261492.536op/s | 175300613.001op/s | 2.23% | -0.040 | -0.248 | 0.99% | 120059.676op/s | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| credit_card/is_card_number/ | execution_time | [3.911µs; 3.912µs] or [-0.009%; +0.009%] | None | None | None |
| credit_card/is_card_number/ | throughput | [255621646.008op/s; 255665490.415op/s] or [-0.009%; +0.009%] | None | None | None |
| credit_card/is_card_number/ 3782-8224-6310-005 | execution_time | [79.602µs; 79.708µs] or [-0.066%; +0.066%] | None | None | None |
| credit_card/is_card_number/ 3782-8224-6310-005 | throughput | [12546157.558op/s; 12562680.824op/s] or [-0.066%; +0.066%] | None | None | None |
| credit_card/is_card_number/ 378282246310005 | execution_time | [72.934µs; 73.033µs] or [-0.068%; +0.068%] | None | None | None |
| credit_card/is_card_number/ 378282246310005 | throughput | [13692865.760op/s; 13711307.738op/s] or [-0.067%; +0.067%] | None | None | None |
| credit_card/is_card_number/37828224631 | execution_time | [3.911µs; 3.912µs] or [-0.009%; +0.009%] | None | None | None |
| credit_card/is_card_number/37828224631 | throughput | [255620167.503op/s; 255666172.633op/s] or [-0.009%; +0.009%] | None | None | None |
| credit_card/is_card_number/378282246310005 | execution_time | [69.593µs; 69.673µs] or [-0.057%; +0.057%] | None | None | None |
| credit_card/is_card_number/378282246310005 | throughput | [14352946.791op/s; 14369364.799op/s] or [-0.057%; +0.057%] | None | None | None |
| credit_card/is_card_number/37828224631000521389798 | execution_time | [52.304µs; 52.313µs] or [-0.009%; +0.009%] | None | None | None |
| credit_card/is_card_number/37828224631000521389798 | throughput | [19115703.135op/s; 19119165.106op/s] or [-0.009%; +0.009%] | None | None | None |
| credit_card/is_card_number/x371413321323331 | execution_time | [5.839µs; 5.857µs] or [-0.152%; +0.152%] | None | None | None |
| credit_card/is_card_number/x371413321323331 | throughput | [170757742.670op/s; 171274563.962op/s] or [-0.151%; +0.151%] | None | None | None |
| credit_card/is_card_number_no_luhn/ | execution_time | [3.912µs; 3.912µs] or [-0.009%; +0.009%] | None | None | None |
| credit_card/is_card_number_no_luhn/ | throughput | [255603988.268op/s; 255652364.093op/s] or [-0.009%; +0.009%] | None | None | None |
| credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 | execution_time | [64.357µs; 64.408µs] or [-0.039%; +0.039%] | None | None | None |
| credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 | throughput | [15526107.091op/s; 15538362.383op/s] or [-0.039%; +0.039%] | None | None | None |
| credit_card/is_card_number_no_luhn/ 378282246310005 | execution_time | [58.255µs; 58.321µs] or [-0.057%; +0.057%] | None | None | None |
| credit_card/is_card_number_no_luhn/ 378282246310005 | throughput | [17146691.848op/s; 17166281.630op/s] or [-0.057%; +0.057%] | None | None | None |
| credit_card/is_card_number_no_luhn/37828224631 | execution_time | [3.911µs; 3.912µs] or [-0.010%; +0.010%] | None | None | None |
| credit_card/is_card_number_no_luhn/37828224631 | throughput | [255642573.143op/s; 255695511.802op/s] or [-0.010%; +0.010%] | None | None | None |
| credit_card/is_card_number_no_luhn/378282246310005 | execution_time | [54.795µs; 54.858µs] or [-0.057%; +0.057%] | None | None | None |
| credit_card/is_card_number_no_luhn/378282246310005 | throughput | [18229358.887op/s; 18250122.702op/s] or [-0.057%; +0.057%] | None | None | None |
| credit_card/is_card_number_no_luhn/37828224631000521389798 | execution_time | [52.281µs; 52.298µs] or [-0.016%; +0.016%] | None | None | None |
| credit_card/is_card_number_no_luhn/37828224631000521389798 | throughput | [19121087.966op/s; 19127248.099op/s] or [-0.016%; +0.016%] | None | None | None |
| credit_card/is_card_number_no_luhn/x371413321323331 | execution_time | [5.822µs; 5.838µs] or [-0.137%; +0.137%] | None | None | None |
| credit_card/is_card_number_no_luhn/x371413321323331 | throughput | [171311070.789op/s; 171781696.071op/s] or [-0.137%; +0.137%] | None | None | None |
Group 12
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| sdk_test_data/rules-based | execution_time | 144.681µs | 146.773µs ± 1.864µs | 146.517µs ± 0.529µs | 146.981µs | 148.496µs | 153.597µs | 165.959µs | 13.27% | 6.793 | 60.569 | 1.27% | 0.132µs | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| sdk_test_data/rules-based | execution_time | [146.514µs; 147.031µs] or [-0.176%; +0.176%] | None | None | None |
Group 13
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| 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/2598 | execution_time | 3.425ms | 3.452ms ± 0.017ms | 3.448ms ± 0.010ms | 3.461ms | 3.485ms | 3.504ms | 3.511ms | 1.83% | 0.950 | 0.585 | 0.50% | 0.001ms | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| receiver_entry_point/report/2598 | execution_time | [3.450ms; 3.454ms] or [-0.070%; +0.070%] | None | None | None |
Group 14
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| write only interface | execution_time | 5.462µs | 5.522µs ± 0.024µs | 5.521µs ± 0.017µs | 5.539µs | 5.558µs | 5.583µs | 5.599µs | 1.41% | 0.342 | 0.123 | 0.44% | 0.002µs | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| write only interface | execution_time | [5.519µs; 5.526µs] or [-0.061%; +0.061%] | None | None | None |
Group 15
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ip_address/quantize_peer_ip_address_benchmark | execution_time | 5.030µs | 5.098µs ± 0.044µs | 5.082µs ± 0.024µs | 5.152µs | 5.165µs | 5.167µs | 5.169µs | 1.71% | 0.475 | -1.427 | 0.87% | 0.003µs | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| ip_address/quantize_peer_ip_address_benchmark | execution_time | [5.092µs; 5.105µs] or [-0.120%; +0.120%] | None | None | None |
Group 16
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... | execution_time | 495.326µs | 497.392µs ± 2.229µs | 496.402µs ± 0.544µs | 498.923µs | 502.515µs | 504.223µs | 506.629µs | 2.06% | 1.647 | 2.223 | 0.45% | 0.158µs | 1 | 200 |
| normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... | throughput | 1973830.516op/s | 2010527.626op/s ± 8944.872op/s | 2014497.443op/s ± 2209.066op/s | 2016255.444op/s | 2018073.824op/s | 2018601.061op/s | 2018871.514op/s | 0.22% | -1.627 | 2.126 | 0.44% | 632.498op/s | 1 | 200 |
| normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて | execution_time | 370.427µs | 371.291µs ± 0.332µs | 371.265µs ± 0.207µs | 371.515µs | 371.812µs | 372.022µs | 372.164µs | 0.24% | 0.153 | -0.254 | 0.09% | 0.023µs | 1 | 200 |
| normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて | throughput | 2686987.143op/s | 2693310.086op/s ± 2404.783op/s | 2693494.970op/s ± 1499.985op/s | 2694794.778op/s | 2697325.785op/s | 2697808.862op/s | 2699588.184op/s | 0.23% | -0.148 | -0.256 | 0.09% | 170.044op/s | 1 | 200 |
| normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters | execution_time | 167.924µs | 168.184µs ± 0.138µs | 168.170µs ± 0.094µs | 168.275µs | 168.414µs | 168.534µs | 168.660µs | 0.29% | 0.535 | 0.271 | 0.08% | 0.010µs | 1 | 200 |
| normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters | throughput | 5929087.289op/s | 5945868.301op/s ± 4888.358op/s | 5946360.509op/s ± 3311.230op/s | 5949522.316op/s | 5953095.547op/s | 5954231.166op/s | 5955077.389op/s | 0.15% | -0.530 | 0.260 | 0.08% | 345.659op/s | 1 | 200 |
| normalization/normalize_service/normalize_service/[empty string] | execution_time | 36.941µs | 37.178µs ± 0.088µs | 37.179µs ± 0.056µs | 37.236µs | 37.326µs | 37.369µs | 37.386µs | 0.56% | -0.218 | 0.004 | 0.24% | 0.006µs | 1 | 200 |
| normalization/normalize_service/normalize_service/[empty string] | throughput | 26747911.981op/s | 26897589.888op/s ± 63671.115op/s | 26896737.386op/s ± 40131.798op/s | 26935155.878op/s | 27022954.790op/s | 27049697.131op/s | 27070122.803op/s | 0.64% | 0.232 | 0.012 | 0.24% | 4502.228op/s | 1 | 200 |
| normalization/normalize_service/normalize_service/test_ASCII | execution_time | 46.315µs | 46.435µs ± 0.114µs | 46.420µs ± 0.031µs | 46.459µs | 46.539µs | 46.631µs | 47.824µs | 3.02% | 9.170 | 108.224 | 0.25% | 0.008µs | 1 | 200 |
| normalization/normalize_service/normalize_service/test_ASCII | throughput | 20910139.373op/s | 21535816.199op/s ± 51767.014op/s | 21542482.434op/s ± 14277.293op/s | 21556591.922op/s | 21573665.372op/s | 21589024.142op/s | 21591401.440op/s | 0.23% | -8.979 | 105.060 | 0.24% | 3660.481op/s | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... | execution_time | [497.083µs; 497.701µs] or [-0.062%; +0.062%] | None | None | None |
| normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... | throughput | [2009287.952op/s; 2011767.299op/s] or [-0.062%; +0.062%] | None | None | None |
| normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて | execution_time | [371.245µs; 371.337µs] or [-0.012%; +0.012%] | None | None | None |
| normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて | throughput | [2692976.806op/s; 2693643.366op/s] or [-0.012%; +0.012%] | None | None | None |
| normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters | execution_time | [168.165µs; 168.203µs] or [-0.011%; +0.011%] | None | None | None |
| normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters | throughput | [5945190.822op/s; 5946545.781op/s] or [-0.011%; +0.011%] | None | None | None |
| normalization/normalize_service/normalize_service/[empty string] | execution_time | [37.166µs; 37.190µs] or [-0.033%; +0.033%] | None | None | None |
| normalization/normalize_service/normalize_service/[empty string] | throughput | [26888765.684op/s; 26906414.092op/s] or [-0.033%; +0.033%] | None | None | None |
| normalization/normalize_service/normalize_service/test_ASCII | execution_time | [46.419µs; 46.450µs] or [-0.034%; +0.034%] | None | None | None |
| normalization/normalize_service/normalize_service/test_ASCII | throughput | [21528641.788op/s; 21542990.609op/s] or [-0.033%; +0.033%] | None | None | None |
Group 17
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| profile_add_sample2_frames_x1000 | execution_time | 747.485µs | 748.396µs ± 0.501µs | 748.333µs ± 0.368µs | 748.739µs | 749.264µs | 749.652µs | 750.221µs | 0.25% | 0.700 | 0.260 | 0.07% | 0.035µs | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| profile_add_sample2_frames_x1000 | execution_time | [748.327µs; 748.466µs] or [-0.009%; +0.009%] | None | None | None |
Group 18
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| tags/replace_trace_tags | execution_time | 2.404µs | 2.442µs ± 0.019µs | 2.437µs ± 0.010µs | 2.452µs | 2.489µs | 2.498µs | 2.498µs | 2.53% | 1.090 | 1.393 | 0.78% | 0.001µs | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| tags/replace_trace_tags | execution_time | [2.439µs; 2.445µs] or [-0.108%; +0.108%] | None | None | None |
Group 19
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... | execution_time | 185.539µs | 186.058µs ± 0.466µs | 185.966µs ± 0.232µs | 186.223µs | 186.897µs | 187.737µs | 189.457µs | 1.88% | 2.908 | 14.857 | 0.25% | 0.033µs | 1 | 200 |
| normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... | throughput | 5278252.307op/s | 5374704.861op/s ± 13372.484op/s | 5377321.979op/s ± 6721.507op/s | 5384017.759op/s | 5388528.099op/s | 5389377.789op/s | 5389705.339op/s | 0.23% | -2.846 | 14.267 | 0.25% | 945.577op/s | 1 | 200 |
| normalization/normalize_name/normalize_name/bad-name | execution_time | 17.834µs | 17.919µs ± 0.033µs | 17.920µs ± 0.020µs | 17.939µs | 17.970µs | 17.997µs | 18.080µs | 0.90% | 0.480 | 2.343 | 0.18% | 0.002µs | 1 | 200 |
| normalization/normalize_name/normalize_name/bad-name | throughput | 55308886.186op/s | 55807436.650op/s ± 103299.291op/s | 55804238.731op/s ± 61355.225op/s | 55865403.813op/s | 55975199.704op/s | 56034231.459op/s | 56073145.769op/s | 0.48% | -0.458 | 2.265 | 0.18% | 7304.363op/s | 1 | 200 |
| normalization/normalize_name/normalize_name/good | execution_time | 10.546µs | 10.593µs ± 0.024µs | 10.589µs ± 0.015µs | 10.609µs | 10.633µs | 10.661µs | 10.688µs | 0.94% | 0.817 | 0.957 | 0.22% | 0.002µs | 1 | 200 |
| normalization/normalize_name/normalize_name/good | throughput | 93560268.168op/s | 94405591.337op/s ± 209786.826op/s | 94440925.966op/s ± 131074.369op/s | 94557852.715op/s | 94693044.034op/s | 94754942.859op/s | 94819455.794op/s | 0.40% | -0.802 | 0.907 | 0.22% | 14834.169op/s | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... | execution_time | [185.993µs; 186.122µs] or [-0.035%; +0.035%] | None | None | None |
| normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... | throughput | [5372851.564op/s; 5376558.159op/s] or [-0.034%; +0.034%] | None | None | None |
| normalization/normalize_name/normalize_name/bad-name | execution_time | [17.914µs; 17.923µs] or [-0.026%; +0.026%] | None | None | None |
| normalization/normalize_name/normalize_name/bad-name | throughput | [55793120.362op/s; 55821752.938op/s] or [-0.026%; +0.026%] | None | None | None |
| normalization/normalize_name/normalize_name/good | execution_time | [10.589µs; 10.596µs] or [-0.031%; +0.031%] | None | None | None |
| normalization/normalize_name/normalize_name/good | throughput | [94376516.900op/s; 94434665.773op/s] or [-0.031%; +0.031%] | None | None | None |
Group 20
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| profile_add_sample_timestamped_x1000 | execution_time | 4.268ms | 4.275ms ± 0.011ms | 4.272ms ± 0.002ms | 4.275ms | 4.290ms | 4.294ms | 4.398ms | 2.96% | 7.039 | 71.887 | 0.26% | 0.001ms | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| profile_add_sample_timestamped_x1000 | execution_time | [4.274ms; 4.277ms] or [-0.036%; +0.036%] | None | None | None |
Group 21
| cpu_model | git_commit_sha | git_commit_date | git_branch |
|---|---|---|---|
| Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz | 3b26275 | 1774566236 | rachel.yang/OTLP-trace-export |
| scenario | metric | min | mean ± sd | median ± mad | p75 | p95 | p99 | max | peak_to_median_ratio | skewness | kurtosis | cv | sem | runs | sample_size |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| profile_serialize_compressed_pprof_timestamped_x1000 | execution_time | 924.259µs | 926.943µs ± 1.146µs | 926.882µs ± 0.779µs | 927.639µs | 928.786µs | 929.475µs | 931.902µs | 0.54% | 0.439 | 1.050 | 0.12% | 0.081µs | 1 | 200 |
| scenario | metric | 95% CI mean | Shapiro-Wilk pvalue | Ljung-Box pvalue (lag=1) | Dip test pvalue |
|---|---|---|---|---|---|
| profile_serialize_compressed_pprof_timestamped_x1000 | execution_time | [926.784µs; 927.102µs] or [-0.017%; +0.017%] | None | None | None |
Baseline
Omitted due to size.
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
|
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #1641 +/- ##
==========================================
+ Coverage 71.00% 71.17% +0.16%
==========================================
Files 411 414 +3
Lines 65052 65738 +686
==========================================
+ Hits 46190 46788 +598
- Misses 18862 18950 +88
🚀 New features to boost your workflow:
|
paullegranddc
left a comment
There was a problem hiding this comment.
To test the otlp trace export, you can add test agent snapshot tests here
|
/merge |
|
View all feedbacks in Devflow UI.
The expected merge time in
Tests failed on this commit 6de8c5d: What to do next?
|
…ute (#1811) # What does this PR do? Adds `resource.name` as a per-span OTLP attribute when mapping Datadog spans to OTLP. The Datadog span resource field now maps to two places: - OtlpSpan.name (existing — the OTLP span name) - span.attributes["resource.name"] (new) This follows the same conditional pattern as operation.name and span.type: the attribute is only emitted when the field is non-empty. # Motivation Spec update to the OTLP trace export RFC: the Datadog resource field should be preserved as a resource.name attribute so downstream consumers can reconstruct the original Datadog resource name independently of the OTLP span name. # Additional Notes This builds on top of feat(otel): add support for OTLP trace export (#1641). The dropped_attributes_count accounting in map_attributes is updated to include the new resource.name slot. # How to test the change? Describe here in detail how the change can be validated. Co-authored-by: rachel.yang <rachel.yang@datadoghq.com>
## Description <!-- Provide an overview of the change and motivation for the change --> Adds native OTLP trace export support to dd-trace-py using libdatadog's TraceExporter. When `OTEL_TRACES_EXPORTER=otlp `, traces are sent directly to an OTLP collector instead of the Datadog agent. - the [libdatadog PR](DataDog/libdatadog#1641) that adds support for OTLP trace export ## Testing <!-- Describe your testing strategy or note what tests are included --> ## Risks <!-- Note any risks associated with this change, or "None" if no risks --> ## Additional Notes <!-- Any other information that would be helpful for reviewers --> - libdd-data-pipeline is pinned to an unreleased commit on DataDog/libdatadog@rachel.yang/OTLP-trace-export. This should be updated to a release tag once that branch merges. - Only http/json protocol is supported for OTLP traces (libdatadog limitation); gRPC is not yet available. Co-authored-by: rachel.yang <rachel.yang@datadoghq.com>
# Release proposal for libdd-sampling and its dependencies This PR contains version bumps based on public API changes and commits since last release. ## libdd-tinybytes **Next version:** `1.1.1` **Semver bump:** `patch` **Tag:** `libdd-tinybytes-v1.1.1` ### Commits - perf: pre-compute string messagepack encoding (#1948) ## libdd-trace-protobuf **Next version:** `3.0.2` **Semver bump:** `patch` **Tag:** `libdd-trace-protobuf-v3.0.2` ### Commits - feat(obfuscation)!: feature parity on span obfuscation [APMSP-2671] (#1788) ## libdd-trace-utils **Next version:** `4.0.0` **Semver bump:** `major` **Tag:** `libdd-trace-utils-v4.0.0` ###⚠️ major bump forced due to: - `libdd-common`: ^3.0.2 → ^4.1.0 ### Commits - feat(trace-utils)!: search all spans to populate tracer payload fields (#1954) - perf: pre-compute string messagepack encoding (#1948) - feat(capablities)!: sleep & spawn capabilities (#1873) - feat(libdd-trace-utils): check for empty value in header datadog-client-computed-stats (#1900) - chore(benchmarks): add allocation size tracking allocator (#1905) - fix(crypto): gate libdd-common TLS features in obfuscation and capabilities-impl (#1872) - fix(libdd-traceutils): Update cloud environment detection logic for Serverless [SVLS-8799] (#1857) - fix(spawn_worker): defer trampoline self-deletion to avoid Valgrind false positive (#1844) - feat(runtime)!: add shared runtime (#1602) - ci: compilation of libdd-data-pipeline to wasm32 (#1830) - feat(capabilities)!: trait architecture http (#1555) - feat(trace-export): map DD span resource to OTLP resource.name attribute (#1811) - feat(otel): add support for OTLP trace export (#1641) ## libdd-sampling **Next version:** `1.0.0` **Semver bump:** `major` **Tag:** `libdd-sampling-v1.0.0` **Warning:** this is an initial release. Please verify that the version and commits included are correct. [APMSP-2671]: https://datadoghq.atlassian.net/browse/APMSP-2671?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ [SVLS-8799]: https://datadoghq.atlassian.net/browse/SVLS-8799?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: iunanua <18325288+iunanua@users.noreply.github.com>
# Release proposal for libdd-data-pipeline and its dependencies This PR contains version bumps based on public API changes and commits since last release. ## libdd-dogstatsd-client **Next version:** `3.0.0` **Semver bump:** `major` **Tag:** `libdd-dogstatsd-client-v3.0.0` ###⚠️ major bump forced due to: - `libdd-common`: ^3.0.2 → ^4.1.0 ### Commits - fix(crypto): gate libdd-common TLS features in remaining internal crates + add CI guard (#1943) ## libdd-trace-obfuscation **Next version:** `3.0.0` **Semver bump:** `major` **Tag:** `libdd-trace-obfuscation-v3.0.0` ###⚠️ major bump forced due to: - `libdd-common`: ^3.0.2 → ^4.1.0 - `libdd-trace-utils`: ^3.0.1 → ^4.0.0 ### Commits - feat!: integrate obfuscation to the stats exporter [APMSP-2764] (#1819) - feat!: added regex-lite feature (#1939) - chore: clippy (#1889) - fix(crypto): gate libdd-common TLS features in obfuscation and capabilities-impl (#1872) - feat(obfuscation)!: feature parity on span obfuscation [APMSP-2671] (#1788) - feat(obfuscation/sql): feature parity on sql obfuscation [APMSP-2667] (#1708) ## libdd-trace-stats **Next version:** `3.0.0` **Semver bump:** `major` **Tag:** `libdd-trace-stats-v3.0.0` ###⚠️ major bump forced due to: - `libdd-trace-utils`: ^3.0.1 → ^4.0.0 ### Commits - perf: pre-compute string messagepack encoding (#1948) - feat!: integrate obfuscation to the stats exporter [APMSP-2764] (#1819) - feat(capablities)!: sleep & spawn capabilities (#1873) - feat: use ip quantization when aggregating peer tags for trace stats (#1944) - fix(crypto): gate libdd-common TLS features in remaining internal crates + add CI guard (#1943) - feat(shared_runtime)!: allow worker to be stopped after fork (#1893) - feat(sidecar)!: Add stats computation via SHM (#1821) - feat(stats): propagate service source from span meta to client stats payload (#1803) - fix(stats): align with css spec (#1790) ## libdd-data-pipeline **Next version:** `4.0.0` **Semver bump:** `major` **Tag:** `libdd-data-pipeline-v4.0.0` ###⚠️ major bump forced due to: - `libdd-common`: ^3.0.2 → ^4.1.0 - `libdd-telemetry`: ^4.0.0 → ^5.0.0 - `libdd-trace-utils`: ^3.0.1 → ^4.0.0 ### Commits - fix(libdd-telemetry): restore previous Cargo.toml version (#1993) - fix(data-pipeline): remove default-features from of trace-obfuscation (#1981) - fix(trace_exporter: shared_runtime): unwrap_or being eager is not good (#1983) - perf: pre-compute string messagepack encoding (#1948) - feat!: integrate obfuscation to the stats exporter [APMSP-2764] (#1819) - feat(capablities)!: sleep & spawn capabilities (#1873) - fix(telemetry): avoid trigger loop in telemetry worker (#1950) - feat(telemetry)!: include dependencies and integrations in app-extended-heartbeat (#1962) - perf(trace-serializer): pre-allocate serialization buffer (#1949) - feat!: added regex-lite feature (#1939) - fix(crypto): gate libdd-common TLS features in remaining internal crates + add CI guard (#1943) - feat(telemetry): add session id support to trace export (#1822) - fix(path): missing bench path in data-pipeline (#1907) - feat(data-pipeline): port dd-trace-rs trace buffer implementation (#1826) - feat(info_fetcher): add timeout to info fetcher (#1890) - feat(shared_runtime)!: allow worker to be stopped after fork (#1893) - feat(sidecar)!: Add stats computation via SHM (#1821) - ci(libdd-shared-runtime): downgrade version so publish workflow succeeds (#1870) - feat(runtime)!: add shared runtime (#1602) - ci: compilation of libdd-data-pipeline to wasm32 (#1830) - feat(capabilities)!: trait architecture http (#1555) - feat(otel): add support for OTLP trace export (#1641) - fix(stats): align with css spec (#1790) --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: iunanua <18325288+iunanua@users.noreply.github.com>
What does this PR do?
Summary
This PR adds an OTLP HTTP/JSON trace export path to TraceExporter. When
OTEL_TRACES_EXPORTER=otlpis set, the exporter converts Datadog msgpack trace payloads to OTLP and POSTs them to the configured OTLP endpoint instead of the Datadog agent. The caller (e.g. dd-trace-py) sends traces in the same format as before — no changes are required on the tracer side.Not in scope
Motivation
We are seeing an increasing number of scenarios where users have applications instrumented with the OTel SDK sending data to OTel collectors, and they would like to get additional features offered by the DD SDK without needing to update their OTel collector deployments. Although there will be follow-up work, this provides the ability for users to write vendor-neutral API instrumentation and emit vendor-neutral telemetry data so DD SDK users don't have to feel locked in when setting up Datadog APM.
Additional Notes
Anything else we should know when reviewing?
How to test the change?
Describe here in detail how the change can be validated.