Skip to content

feat(data-pipeline)!: follow the full sql config in CSS obfuscation - #2535

Merged
gh-worker-dd-mergequeue-cf854d[bot] merged 20 commits into
mainfrom
oscarld/follow-full-obfuscation-config-css
Oct 6, 2026
Merged

gh-worker-dd-mergequeue-cf854d[bot] merged 20 commits into
mainfrom
oscarld/follow-full-obfuscation-config-css

Conversation

@Eldolfin

@Eldolfin Eldolfin commented Sep 16, 2026 •

Copy link
Copy Markdown
Contributor

What does this PR do?

Pass the full obfuscation config exposed in the agent's /info to the sql obfuscator.

Now accept obfuscation_version 1 and 2 to enable obfuscation even when a custom config is set (see DataDog/datadog-agent#54573).

Motivation

More precise client-side stats for customers with a custom obfuscation config.

Additional Notes

See https://datadoghq.atlassian.net/wiki/spaces/APM/pages/6701580544/PENDING+Stats+obfuscation+precisions

How to test the change?

APMSP-3720

@Eldolfin
Eldolfin added this pull request to stack #2536 September 16, 2026 11:29
@pr-commenter

pr-commenter Bot commented Sep 16, 2026 •

Copy link
Copy Markdown

Benchmarks

Comparison

Benchmark execution time: 2026-10-06 13:36:42

Comparing candidate commit 120b839 in PR branch oscarld/follow-full-obfuscation-config-css with baseline commit 7717de8 in branch main.

📊 Benchmarking dashboard

Found 0 performance improvements and 0 performance regressions! Performance is the same for 24 metrics, 0 unstable metrics.

Explanation

This is an A/B test comparing a candidate commit's performance against that of a baseline commit. Performance changes are noted in the tables below as:

  • 🟩 = significantly better candidate vs. baseline
  • 🟥 = significantly worse candidate vs. baseline

We compute a confidence interval (CI) over the relative difference of means between metrics from the candidate and baseline commits, considering the baseline as the reference.

If the CI is entirely outside the configured SIGNIFICANT_IMPACT_THRESHOLD (or the deprecated UNCONFIDENCE_THRESHOLD), the change is considered significant.

Feel free to reach out to #apm-benchmarking-platform on Slack if you have any questions.

More details about the CI and significant changes

You can imagine this CI as a range of values that is likely to contain the true difference of means between the candidate and baseline commits.

CIs of the difference of means are often centered around 0%, because often changes are not that big:

---------------------------------(------|---^--------)-------------------------------->
                              -0.6%    0%  0.3%     +1.2%
                                 |          |        |
         lower bound of the CI --'          |        |
sample mean (center of the CI) -------------'        |
         upper bound of the CI ----------------------'

As described above, a change is considered significant if the CI is entirely outside the configured SIGNIFICANT_IMPACT_THRESHOLD (or the deprecated UNCONFIDENCE_THRESHOLD).

For instance, for an execution time metric, this confidence interval indicates a significantly worse performance:

----------------------------------------|---------|---(---------^---------)---------->
                                       0%        1%  1.3%      2.2%      3.1%
                                                  |   |         |         |
       significant impact threshold --------------'   |         |         |
                      lower bound of CI --------------'         |         |
       sample mean (center of the CI) --------------------------'         |
                      upper bound of CI ----------------------------------'

Benchmark execution time: 2026-10-06 13:36:29

Comparing candidate commit 120b839 in PR branch oscarld/follow-full-obfuscation-config-css with baseline commit 7717de8 in branch main.

📊 Benchmarking dashboard

Found 0 performance improvements and 2 performance regressions! Performance is the same for 31 metrics, 0 unstable metrics.

Explanation

This is an A/B test comparing a candidate commit's performance against that of a baseline commit. Performance changes are noted in the tables below as:

  • 🟩 = significantly better candidate vs. baseline
  • 🟥 = significantly worse candidate vs. baseline

We compute a confidence interval (CI) over the relative difference of means between metrics from the candidate and baseline commits, considering the baseline as the reference.

If the CI is entirely outside the configured SIGNIFICANT_IMPACT_THRESHOLD (or the deprecated UNCONFIDENCE_THRESHOLD), the change is considered significant.

Feel free to reach out to #apm-benchmarking-platform on Slack if you have any questions.

More details about the CI and significant changes

You can imagine this CI as a range of values that is likely to contain the true difference of means between the candidate and baseline commits.

CIs of the difference of means are often centered around 0%, because often changes are not that big:

---------------------------------(------|---^--------)-------------------------------->
                              -0.6%    0%  0.3%     +1.2%
                                 |          |        |
         lower bound of the CI --'          |        |
sample mean (center of the CI) -------------'        |
         upper bound of the CI ----------------------'

As described above, a change is considered significant if the CI is entirely outside the configured SIGNIFICANT_IMPACT_THRESHOLD (or the deprecated UNCONFIDENCE_THRESHOLD).

For instance, for an execution time metric, this confidence interval indicates a significantly worse performance:

----------------------------------------|---------|---(---------^---------)---------->
                                       0%        1%  1.3%      2.2%      3.1%
                                                  |   |         |         |
       significant impact threshold --------------'   |         |         |
                      lower bound of CI --------------'         |         |
       sample mean (center of the CI) --------------------------'         |
                      upper bound of CI ----------------------------------'

scenario:credit_card/is_card_number/378282246310005

  • 🟥 execution_time [+11.349µs; +11.768µs] or [+16.051%; +16.642%]
  • 🟥 throughput [-2012253.162op/s; -1954408.169op/s] or [-14.229%; -13.820%]

Benchmark execution time: 2026-10-06 13:32:59

Comparing candidate commit 120b839 in PR branch oscarld/follow-full-obfuscation-config-css with baseline commit 7717de8 in branch main.

📊 Benchmarking dashboard

Found 0 performance improvements and 0 performance regressions! Performance is the same for 3 metrics, 0 unstable metrics.

Explanation

This is an A/B test comparing a candidate commit's performance against that of a baseline commit. Performance changes are noted in the tables below as:

  • 🟩 = significantly better candidate vs. baseline
  • 🟥 = significantly worse candidate vs. baseline

We compute a confidence interval (CI) over the relative difference of means between metrics from the candidate and baseline commits, considering the baseline as the reference.

If the CI is entirely outside the configured SIGNIFICANT_IMPACT_THRESHOLD (or the deprecated UNCONFIDENCE_THRESHOLD), the change is considered significant.

Feel free to reach out to #apm-benchmarking-platform on Slack if you have any questions.

More details about the CI and significant changes

You can imagine this CI as a range of values that is likely to contain the true difference of means between the candidate and baseline commits.

CIs of the difference of means are often centered around 0%, because often changes are not that big:

---------------------------------(------|---^--------)-------------------------------->
                              -0.6%    0%  0.3%     +1.2%
                                 |          |        |
         lower bound of the CI --'          |        |
sample mean (center of the CI) -------------'        |
         upper bound of the CI ----------------------'

As described above, a change is considered significant if the CI is entirely outside the configured SIGNIFICANT_IMPACT_THRESHOLD (or the deprecated UNCONFIDENCE_THRESHOLD).

For instance, for an execution time metric, this confidence interval indicates a significantly worse performance:

----------------------------------------|---------|---(---------^---------)---------->
                                       0%        1%  1.3%      2.2%      3.1%
                                                  |   |         |         |
       significant impact threshold --------------'   |         |         |
                      lower bound of CI --------------'         |         |
       sample mean (center of the CI) --------------------------'         |
                      upper bound of CI ----------------------------------'

Candidate

Candidate benchmark details

Group 1

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 120b839 1791292676 oscarld/follow-full-obfuscation-config-css
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
trace_buffer/1_senders/10us_delay execution_time 56.234ms 56.382ms ± 0.101ms 56.371ms ± 0.048ms 56.416ms 56.532ms 56.791ms 57.022ms 1.15% 2.347 9.721 0.18% 0.007ms 1 200
trace_buffer/1_senders/10us_delay throughput 15783.513op/s 15962.674op/s ± 28.498op/s 15965.655op/s ± 13.547op/s 15979.394op/s 15995.186op/s 16001.937op/s 16004.591op/s 0.24% -2.314 9.480 0.18% 2.015op/s 1 200
trace_buffer/1_senders/1us_delay execution_time 49.925ms 49.992ms ± 0.024ms 49.984ms ± 0.013ms 50.011ms 50.025ms 50.061ms 50.136ms 0.30% 1.473 5.929 0.05% 0.002ms 1 200
trace_buffer/1_senders/1us_delay throughput 17951.212op/s 18002.915op/s ± 8.570op/s 18005.730op/s ± 4.730op/s 18008.884op/s 18012.386op/s 18015.157op/s 18026.995op/s 0.12% -1.465 5.875 0.05% 0.606op/s 1 200
trace_buffer/1_senders/no_delay execution_time 340.072µs 341.913µs ± 0.605µs 341.842µs ± 0.297µs 342.194µs 342.707µs 343.640µs 346.392µs 1.33% 2.146 14.733 0.18% 0.043µs 1 200
trace_buffer/1_senders/no_delay throughput 2598209.148op/s 2632259.765op/s ± 4638.356op/s 2632798.277op/s ± 2284.250op/s 2634685.066op/s 2638398.342op/s 2642935.584op/s 2646496.929op/s 0.52% -2.083 14.221 0.18% 327.981op/s 1 200
trace_buffer/2_senders/10us_delay execution_time 56.337ms 56.931ms ± 0.349ms 56.883ms ± 0.254ms 57.191ms 57.567ms 57.796ms 58.000ms 1.96% 0.584 -0.199 0.61% 0.025ms 1 200
trace_buffer/2_senders/10us_delay throughput 31034.382op/s 31618.381op/s ± 193.279op/s 31643.703op/s ± 141.257op/s 31777.614op/s 31877.048op/s 31918.639op/s 31950.748op/s 0.97% -0.558 -0.248 0.61% 13.667op/s 1 200
trace_buffer/2_senders/1us_delay execution_time 49.967ms 50.013ms ± 0.031ms 50.014ms ± 0.016ms 50.024ms 50.076ms 50.123ms 50.155ms 0.28% 1.377 3.319 0.06% 0.002ms 1 200
trace_buffer/2_senders/1us_delay throughput 35888.753op/s 35990.787op/s ± 22.331op/s 35990.083op/s ± 11.240op/s 36008.288op/s 36019.717op/s 36022.007op/s 36023.436op/s 0.09% -1.371 3.293 0.06% 1.579op/s 1 200
trace_buffer/2_senders/no_delay execution_time 857.834µs 892.203µs ± 14.957µs 892.613µs ± 10.318µs 903.131µs 916.268µs 924.697µs 928.561µs 4.03% -0.014 -0.415 1.67% 1.058µs 1 200
trace_buffer/2_senders/no_delay throughput 1938484.005op/s 2018043.725op/s ± 33860.800op/s 2016552.087op/s ± 23290.350op/s 2039603.050op/s 2076634.018op/s 2092727.333op/s 2098309.206op/s 4.05% 0.093 -0.416 1.67% 2394.320op/s 1 200
trace_buffer/4_senders/10us_delay execution_time 56.919ms 57.453ms ± 0.232ms 57.430ms ± 0.102ms 57.520ms 57.942ms 58.269ms 58.321ms 1.55% 1.027 2.117 0.40% 0.016ms 1 200
trace_buffer/4_senders/10us_delay throughput 61727.844op/s 62660.758op/s ± 251.963op/s 62685.394op/s ± 111.119op/s 62798.619op/s 63002.730op/s 63192.830op/s 63247.526op/s 0.90% -0.991 2.027 0.40% 17.816op/s 1 200
trace_buffer/4_senders/1us_delay execution_time 49.988ms 50.035ms ± 0.037ms 50.029ms ± 0.016ms 50.042ms 50.104ms 50.147ms 50.250ms 0.44% 2.090 6.834 0.07% 0.003ms 1 200
trace_buffer/4_senders/1us_delay throughput 71642.254op/s 71949.009op/s ± 52.697op/s 71957.552op/s ± 23.660op/s 71984.941op/s 72003.955op/s 72017.327op/s 72017.778op/s 0.08% -2.081 6.766 0.07% 3.726op/s 1 200
trace_buffer/4_senders/no_delay execution_time 2.064ms 2.291ms ± 0.086ms 2.290ms ± 0.057ms 2.355ms 2.419ms 2.464ms 2.479ms 8.25% -0.392 0.029 3.74% 0.006ms 1 200
trace_buffer/4_senders/no_delay throughput 1452119.054op/s 1573490.152op/s ± 60101.148op/s 1571962.851op/s ± 39097.688op/s 1606759.869op/s 1689736.189op/s 1737983.570op/s 1744577.514op/s 10.98% 0.610 0.356 3.81% 4249.793op/s 1 200
trace_buffer/8_senders/10us_delay execution_time 57.513ms 57.937ms ± 0.289ms 57.833ms ± 0.158ms 58.180ms 58.487ms 58.573ms 58.610ms 1.34% 0.713 -0.714 0.50% 0.020ms 1 200
trace_buffer/8_senders/10us_delay throughput 122846.671op/s 124275.331op/s ± 617.591op/s 124496.999op/s ± 340.157op/s 124752.337op/s 125003.106op/s 125103.309op/s 125188.147op/s 0.56% -0.702 -0.732 0.50% 43.670op/s 1 200
trace_buffer/8_senders/1us_delay execution_time 50.010ms 50.099ms ± 0.102ms 50.084ms ± 0.035ms 50.127ms 50.189ms 50.250ms 51.327ms 2.48% 8.777 101.824 0.20% 0.007ms 1 200
trace_buffer/8_senders/1us_delay throughput 140277.208op/s 143714.621op/s ± 288.443op/s 143758.265op/s ± 99.275op/s 143849.353op/s 143935.730op/s 143969.228op/s 143972.634op/s 0.15% -8.614 99.170 0.20% 20.396op/s 1 200
trace_buffer/8_senders/no_delay execution_time 4.137ms 5.885ms ± 0.419ms 6.102ms ± 0.110ms 6.183ms 6.226ms 6.263ms 6.322ms 3.61% -1.602 2.528 7.10% 0.030ms 1 200
trace_buffer/8_senders/no_delay throughput 1138862.387op/s 1230554.585op/s ± 100953.399op/s 1179949.223op/s ± 20807.230op/s 1264873.039op/s 1395445.807op/s 1592834.452op/s 1740333.675op/s 47.49% 2.183 6.043 8.18% 7138.483op/s 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
trace_buffer/1_senders/10us_delay execution_time [56.368ms; 56.396ms] or [-0.025%; +0.025%] None None None
trace_buffer/1_senders/10us_delay throughput [15958.724op/s; 15966.623op/s] or [-0.025%; +0.025%] None None None
trace_buffer/1_senders/1us_delay execution_time [49.989ms; 49.995ms] or [-0.007%; +0.007%] None None None
trace_buffer/1_senders/1us_delay throughput [18001.728op/s; 18004.103op/s] or [-0.007%; +0.007%] None None None
trace_buffer/1_senders/no_delay execution_time [341.829µs; 341.996µs] or [-0.025%; +0.025%] None None None
trace_buffer/1_senders/no_delay throughput [2631616.934op/s; 2632902.597op/s] or [-0.024%; +0.024%] None None None
trace_buffer/2_senders/10us_delay execution_time [56.883ms; 56.979ms] or [-0.085%; +0.085%] None None None
trace_buffer/2_senders/10us_delay throughput [31591.594op/s; 31645.168op/s] or [-0.085%; +0.085%] None None None
trace_buffer/2_senders/1us_delay execution_time [50.009ms; 50.017ms] or [-0.009%; +0.009%] None None None
trace_buffer/2_senders/1us_delay throughput [35987.692op/s; 35993.882op/s] or [-0.009%; +0.009%] None None None
trace_buffer/2_senders/no_delay execution_time [890.130µs; 894.275µs] or [-0.232%; +0.232%] None None None
trace_buffer/2_senders/no_delay throughput [2013350.944op/s; 2022736.506op/s] or [-0.233%; +0.233%] None None None
trace_buffer/4_senders/10us_delay execution_time [57.421ms; 57.485ms] or [-0.056%; +0.056%] None None None
trace_buffer/4_senders/10us_delay throughput [62625.838op/s; 62695.677op/s] or [-0.056%; +0.056%] None None None
trace_buffer/4_senders/1us_delay execution_time [50.030ms; 50.041ms] or [-0.010%; +0.010%] None None None
trace_buffer/4_senders/1us_delay throughput [71941.705op/s; 71956.312op/s] or [-0.010%; +0.010%] None None None
trace_buffer/4_senders/no_delay execution_time [2.279ms; 2.303ms] or [-0.519%; +0.519%] None None None
trace_buffer/4_senders/no_delay throughput [1565160.711op/s; 1581819.593op/s] or [-0.529%; +0.529%] None None None
trace_buffer/8_senders/10us_delay execution_time [57.897ms; 57.977ms] or [-0.069%; +0.069%] None None None
trace_buffer/8_senders/10us_delay throughput [124189.739op/s; 124360.923op/s] or [-0.069%; +0.069%] None None None
trace_buffer/8_senders/1us_delay execution_time [50.085ms; 50.114ms] or [-0.028%; +0.028%] None None None
trace_buffer/8_senders/1us_delay throughput [143674.645op/s; 143754.596op/s] or [-0.028%; +0.028%] None None None
trace_buffer/8_senders/no_delay execution_time [5.827ms; 5.943ms] or [-0.987%; +0.987%] None None None
trace_buffer/8_senders/no_delay throughput [1216563.415op/s; 1244545.756op/s] or [-1.137%; +1.137%] None None None

Group 1

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 120b839 1791292676 oscarld/follow-full-obfuscation-config-css
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 29.416µs 30.367µs ± 1.288µs 29.580µs ± 0.101µs 31.783µs 32.586µs 33.161µs 33.235µs 12.36% 0.999 -0.821 4.23% 0.091µ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 [30.188µs; 30.545µs] or [-0.588%; +0.588%] None None None

Group 2

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 120b839 1791292676 oscarld/follow-full-obfuscation-config-css
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.612µs 2.651µs ± 0.019µs 2.648µs ± 0.009µs 2.658µs 2.690µs 2.706µs 2.739µs 3.42% 1.381 3.157 0.70% 0.001µs 1 200
tags/replace_trace_tags_v04 execution_time 2.675µs 2.862µs ± 0.076µs 2.895µs ± 0.017µs 2.910µs 2.921µs 2.931µs 2.932µs 1.28% -1.351 0.065 2.67% 0.005µ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.648µs; 2.654µs] or [-0.097%; +0.097%] None None None
tags/replace_trace_tags_v04 execution_time [2.852µs; 2.873µs] or [-0.370%; +0.370%] None None None

Group 3

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 120b839 1791292676 oscarld/follow-full-obfuscation-config-css
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 307.279µs 308.208µs ± 0.601µs 308.064µs ± 0.254µs 308.422µs 308.898µs 310.343µs 312.356µs 1.39% 3.028 14.853 0.19% 0.042µ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 [308.125µs; 308.291µs] or [-0.027%; +0.027%] None None None

Group 4

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 120b839 1791292676 oscarld/follow-full-obfuscation-config-css
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 4.954µs 5.042µs ± 0.034µs 5.057µs ± 0.015µs 5.070µs 5.076µs 5.078µs 5.080µs 0.45% -0.813 -0.899 0.68% 0.002µ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.037µs; 5.047µs] or [-0.094%; +0.094%] None None None

Group 5

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 120b839 1791292676 oscarld/follow-full-obfuscation-config-css
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.898µs 3.917µs ± 0.004µs 3.916µs ± 0.002µs 3.920µs 3.924µs 3.926µs 3.933µs 0.42% 0.187 3.127 0.10% 0.000µs 1 200
credit_card/is_card_number/ throughput 254262455.202op/s 255289873.976op/s ± 253037.116op/s 255339369.667op/s ± 160238.777op/s 255463329.361op/s 255582875.938op/s 255689803.306op/s 256549985.309op/s 0.47% -0.172 3.162 0.10% 17892.426op/s 1 200
credit_card/is_card_number/ 3782-8224-6310-005 execution_time 79.510µs 79.924µs ± 0.322µs 79.862µs ± 0.097µs 79.987µs 80.248µs 80.785µs 83.523µs 4.58% 7.355 77.260 0.40% 0.023µs 1 200
credit_card/is_card_number/ 3782-8224-6310-005 throughput 11972740.920op/s 12512085.147op/s ± 48924.233op/s 12521670.067op/s ± 15210.504op/s 12534021.852op/s 12553076.975op/s 12566885.277op/s 12576990.396op/s 0.44% -7.058 72.671 0.39% 3459.466op/s 1 200
credit_card/is_card_number/ 378282246310005 execution_time 73.015µs 73.576µs ± 0.378µs 73.544µs ± 0.128µs 73.660µs 73.924µs 74.093µs 78.164µs 6.28% 9.025 106.894 0.51% 0.027µs 1 200
credit_card/is_card_number/ 378282246310005 throughput 12793583.341op/s 13591781.667op/s ± 66806.445op/s 13597251.997op/s ± 23732.273op/s 13622399.319op/s 13645403.306op/s 13664272.302op/s 13695822.824op/s 0.72% -8.607 100.170 0.49% 4723.929op/s 1 200
credit_card/is_card_number/37828224631 execution_time 3.896µs 3.917µs ± 0.004µs 3.917µs ± 0.002µs 3.919µs 3.924µs 3.925µs 3.927µs 0.26% -0.361 3.512 0.10% 0.000µs 1 200
credit_card/is_card_number/37828224631 throughput 254658896.229op/s 255286589.553op/s ± 250279.089op/s 255312752.872op/s ± 154544.289op/s 255442913.930op/s 255599602.367op/s 255715759.821op/s 256667369.746op/s 0.53% 0.377 3.593 0.10% 17697.404op/s 1 200
credit_card/is_card_number/378282246310005 execution_time 81.456µs 82.269µs ± 1.498µs 81.822µs ± 0.143µs 82.073µs 85.149µs 88.317µs 94.349µs 15.31% 4.481 24.939 1.82% 0.106µs 1 200
credit_card/is_card_number/378282246310005 throughput 10598958.338op/s 12158976.143op/s ± 205362.758op/s 12221616.662op/s ± 21428.082op/s 12238971.592op/s 12259875.121op/s 12270702.067op/s 12276615.503op/s 0.45% -4.156 20.847 1.68% 14521.340op/s 1 200
credit_card/is_card_number/37828224631000521389798 execution_time 52.282µs 52.397µs ± 0.055µs 52.390µs ± 0.035µs 52.430µs 52.484µs 52.529µs 52.677µs 0.55% 0.934 2.388 0.11% 0.004µs 1 200
credit_card/is_card_number/37828224631000521389798 throughput 18983502.045op/s 19084921.269op/s ± 20116.333op/s 19087508.186op/s ± 12766.957op/s 19098775.294op/s 19113321.318op/s 19118705.895op/s 19126976.688op/s 0.21% -0.923 2.335 0.11% 1422.440op/s 1 200
credit_card/is_card_number/x371413321323331 execution_time 5.734µs 5.861µs ± 0.061µs 5.865µs ± 0.044µs 5.902µs 5.970µs 5.991µs 6.011µs 2.47% 0.125 -0.499 1.04% 0.004µs 1 200
credit_card/is_card_number/x371413321323331 throughput 166374756.364op/s 170627990.630op/s ± 1777876.185op/s 170491238.750op/s ± 1269434.936op/s 172032933.097op/s 173468730.184op/s 174267912.283op/s 174393894.479op/s 2.29% -0.079 -0.516 1.04% 125714.831op/s 1 200
credit_card/is_card_number_no_luhn/ execution_time 3.894µs 3.916µs ± 0.004µs 3.915µs ± 0.003µs 3.919µs 3.923µs 3.926µs 3.928µs 0.33% -0.157 3.224 0.11% 0.000µs 1 200
credit_card/is_card_number_no_luhn/ throughput 254579694.405op/s 255355968.189op/s ± 270898.958op/s 255415853.270op/s ± 176320.153op/s 255546151.657op/s 255662103.862op/s 255778247.344op/s 256812104.404op/s 0.55% 0.174 3.300 0.11% 19155.449op/s 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time 64.206µs 64.462µs ± 0.153µs 64.426µs ± 0.072µs 64.515µs 64.785µs 64.926µs 65.044µs 0.96% 1.260 1.461 0.24% 0.011µs 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput 15374314.291op/s 15513079.137op/s ± 36720.409op/s 15521759.476op/s ± 17450.359op/s 15536337.913op/s 15557705.445op/s 15565618.491op/s 15574950.807op/s 0.34% -1.246 1.419 0.24% 2596.525op/s 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time 57.263µs 57.605µs ± 0.118µs 57.585µs ± 0.066µs 57.669µs 57.816µs 57.981µs 58.081µs 0.86% 0.909 1.789 0.20% 0.008µs 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 throughput 17217370.189op/s 17359660.199op/s ± 35512.544op/s 17365554.561op/s ± 19856.472op/s 17383602.048op/s 17408226.519op/s 17421444.317op/s 17463188.802op/s 0.56% -0.891 1.745 0.20% 2511.116op/s 1 200
credit_card/is_card_number_no_luhn/37828224631 execution_time 3.902µs 3.917µs ± 0.004µs 3.917µs ± 0.003µs 3.920µs 3.924µs 3.925µs 3.931µs 0.37% 0.233 0.782 0.10% 0.000µs 1 200
credit_card/is_card_number_no_luhn/37828224631 throughput 254356363.328op/s 255267369.139op/s ± 249629.880op/s 255301353.097op/s ± 168815.584op/s 255460512.226op/s 255601938.737op/s 255656457.780op/s 256268901.463op/s 0.38% -0.225 0.789 0.10% 17651.498op/s 1 200
credit_card/is_card_number_no_luhn/378282246310005 execution_time 54.619µs 54.928µs ± 0.183µs 54.884µs ± 0.105µs 55.022µs 55.278µs 55.445µs 55.529µs 1.17% 0.978 0.448 0.33% 0.013µs 1 200
credit_card/is_card_number_no_luhn/378282246310005 throughput 18008540.772op/s 18205968.228op/s ± 60343.535op/s 18220134.790op/s ± 34846.473op/s 18246997.946op/s 18277256.796op/s 18294823.141op/s 18308724.107op/s 0.49% -0.963 0.410 0.33% 4266.932op/s 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time 52.294µs 52.387µs ± 0.054µs 52.379µs ± 0.039µs 52.423µs 52.485µs 52.518µs 52.547µs 0.32% 0.479 -0.355 0.10% 0.004µs 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput 19030695.915op/s 19088785.889op/s ± 19541.416op/s 19091738.055op/s ± 14207.461op/s 19103389.419op/s 19117130.191op/s 19122110.610op/s 19122777.140op/s 0.16% -0.475 -0.361 0.10% 1381.787op/s 1 200
credit_card/is_card_number_no_luhn/x371413321323331 execution_time 5.701µs 5.868µs ± 0.058µs 5.869µs ± 0.035µs 5.904µs 5.965µs 5.987µs 5.992µs 2.10% -0.100 -0.196 0.99% 0.004µs 1 200
credit_card/is_card_number_no_luhn/x371413321323331 throughput 166877529.696op/s 170430546.683op/s ± 1692108.053op/s 170380379.691op/s ± 1016288.703op/s 171421946.807op/s 173425731.286op/s 174334209.250op/s 175421043.924op/s 2.96% 0.154 -0.154 0.99% 119650.108op/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.917µs; 3.918µs] or [-0.014%; +0.014%] None None None
credit_card/is_card_number/ throughput [255254805.465op/s; 255324942.487op/s] or [-0.014%; +0.014%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 execution_time [79.879µs; 79.969µs] or [-0.056%; +0.056%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 throughput [12505304.719op/s; 12518865.575op/s] or [-0.054%; +0.054%] None None None
credit_card/is_card_number/ 378282246310005 execution_time [73.523µs; 73.628µs] or [-0.071%; +0.071%] None None None
credit_card/is_card_number/ 378282246310005 throughput [13582522.936op/s; 13601040.398op/s] or [-0.068%; +0.068%] None None None
credit_card/is_card_number/37828224631 execution_time [3.917µs; 3.918µs] or [-0.014%; +0.014%] None None None
credit_card/is_card_number/37828224631 throughput [255251903.279op/s; 255321275.828op/s] or [-0.014%; +0.014%] None None None
credit_card/is_card_number/378282246310005 execution_time [82.061µs; 82.477µs] or [-0.252%; +0.252%] None None None
credit_card/is_card_number/378282246310005 throughput [12130514.840op/s; 12187437.446op/s] or [-0.234%; +0.234%] None None None
credit_card/is_card_number/37828224631000521389798 execution_time [52.390µs; 52.405µs] or [-0.015%; +0.015%] None None None
credit_card/is_card_number/37828224631000521389798 throughput [19082133.339op/s; 19087709.199op/s] or [-0.015%; +0.015%] None None None
credit_card/is_card_number/x371413321323331 execution_time [5.853µs; 5.870µs] or [-0.145%; +0.145%] None None None
credit_card/is_card_number/x371413321323331 throughput [170381594.090op/s; 170874387.171op/s] or [-0.144%; +0.144%] None None None
credit_card/is_card_number_no_luhn/ execution_time [3.916µs; 3.917µs] or [-0.015%; +0.015%] None None None
credit_card/is_card_number_no_luhn/ throughput [255318424.199op/s; 255393512.179op/s] or [-0.015%; +0.015%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time [64.441µs; 64.483µs] or [-0.033%; +0.033%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput [15507990.041op/s; 15518168.232op/s] or [-0.033%; +0.033%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time [57.589µs; 57.621µs] or [-0.028%; +0.028%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 throughput [17354738.502op/s; 17364581.896op/s] or [-0.028%; +0.028%] None None None
credit_card/is_card_number_no_luhn/37828224631 execution_time [3.917µs; 3.918µs] or [-0.014%; +0.014%] None None None
credit_card/is_card_number_no_luhn/37828224631 throughput [255232772.839op/s; 255301965.440op/s] or [-0.014%; +0.014%] None None None
credit_card/is_card_number_no_luhn/378282246310005 execution_time [54.902µs; 54.953µs] or [-0.046%; +0.046%] None None None
credit_card/is_card_number_no_luhn/378282246310005 throughput [18197605.194op/s; 18214331.261op/s] or [-0.046%; +0.046%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time [52.379µs; 52.394µs] or [-0.014%; +0.014%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput [19086077.637op/s; 19091494.142op/s] or [-0.014%; +0.014%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 execution_time [5.860µs; 5.876µs] or [-0.137%; +0.137%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 throughput [170196036.781op/s; 170665056.586op/s] or [-0.138%; +0.138%] None None None

Group 1

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 120b839 1791292676 oscarld/follow-full-obfuscation-config-css
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 15.002µs 15.679µs ± 0.218µs 15.634µs ± 0.095µs 15.745µs 16.113µs 16.287µs 16.815µs 7.55% 1.370 4.204 1.39% 0.015µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
two way interface execution_time [15.649µs; 15.709µs] or [-0.193%; +0.193%] None None None

Group 2

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 120b839 1791292676 oscarld/follow-full-obfuscation-config-css
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 1.073µs 1.087µs ± 0.005µs 1.088µs ± 0.003µs 1.091µs 1.095µs 1.098µs 1.102µs 1.31% -0.380 0.242 0.49% 0.000µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
write only interface execution_time [1.086µs; 1.088µs] or [-0.068%; +0.068%] None None None

Group 3

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 120b839 1791292676 oscarld/follow-full-obfuscation-config-css
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 9.501ms 9.526ms ± 0.018ms 9.524ms ± 0.012ms 9.536ms 9.560ms 9.569ms 9.596ms 0.76% 0.837 0.508 0.18% 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 [9.524ms; 9.529ms] or [-0.026%; +0.026%] None None None

Baseline

Omitted due to size.

@Eldolfin
Eldolfin force-pushed the oscarld/follow-full-obfuscation-config-css branch from a64b1d6 to ea2df3e Compare September 16, 2026 11:39
@Eldolfin Eldolfin changed the title feat(data-pipeline): follow the full sql config in CSS obfuscation feat(data-pipeline)!: follow the full sql config in CSS obfuscation Sep 16, 2026
@datadog-datadog-us1-prod

datadog-datadog-us1-prod Bot commented Sep 16, 2026 •

Copy link
Copy Markdown

Tests

✅ All CI checks and tests passed.

🎉 All green!

🧪 All tests passed
❄️ No new flaky tests detected

🎯 Code Coverage (details)
• Patch Coverage: 75.68%
• Overall Coverage: 80.31% (+0.00%)

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: 120b839 | Docs | View more details | Give us feedback!

@dd-octo-sts

dd-octo-sts Bot commented Sep 16, 2026 •

Copy link
Copy Markdown
Contributor

Artifact Size Benchmark Report

aarch64-alpine-linux-musl
Artifact Baseline Commit Change
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.so 9.08 MB 9.08 MB 0% (0 B) 👌
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.a 96.24 MB 96.24 MB +0% (+4.29 KB) 👌
aarch64-unknown-linux-gnu
Artifact Baseline Commit Change
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.a 107.62 MB 107.63 MB +0% (+4.32 KB) 👌
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so 12.20 MB 12.20 MB +0% (+24 B) 👌
libdatadog-x64-windows
Artifact Baseline Commit Change
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.dll 29.13 MB 29.13 MB +0% (+1.50 KB) 👌
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.lib 97.60 KB 97.60 KB 0% (0 B) 👌
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.pdb 191.89 MB 191.92 MB +.01% (+32.00 KB) 🔍
/libdatadog-x64-windows/debug/static/datadog_profiling_ffi.lib 817.94 MB 819.43 MB +.18% (+1.49 MB) 🔍
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.dll 9.74 MB 9.74 MB +0% (+512 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.lib 97.60 KB 97.60 KB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.pdb 27.57 MB 27.58 MB +.02% (+8.00 KB) 🔍
/libdatadog-x64-windows/release/static/datadog_profiling_ffi.lib 55.74 MB 55.74 MB +0% (+1.15 KB) 👌
libdatadog-x86-windows
Artifact Baseline Commit Change
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.dll 25.47 MB 25.47 MB +0% (+2.00 KB) 👌
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.lib 99.13 KB 99.13 KB 0% (0 B) 👌
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.pdb 197.17 MB 197.17 MB 0% (0 B) 👌
/libdatadog-x86-windows/debug/static/datadog_profiling_ffi.lib 804.90 MB 805.82 MB +.11% (+943.42 KB) 🔍
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.dll 7.56 MB 7.56 MB +0% (+512 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.lib 99.13 KB 99.13 KB 0% (0 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.pdb 29.69 MB 29.69 MB 0% (0 B) 👌
/libdatadog-x86-windows/release/static/datadog_profiling_ffi.lib 52.67 MB 52.67 MB +0% (+1.24 KB) 👌
x86_64-alpine-linux-musl
Artifact Baseline Commit Change
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.a 86.23 MB 86.24 MB +0% (+3.71 KB) 👌
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.so 10.07 MB 10.07 MB 0% (0 B) 👌
x86_64-unknown-linux-gnu
Artifact Baseline Commit Change
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.a 102.08 MB 102.08 MB +0% (+3.77 KB) 👌
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so 12.31 MB 12.31 MB +0% (+24 B) 👌

@Eldolfin
Eldolfin marked this pull request as ready for review September 16, 2026 13:30
@Eldolfin
Eldolfin requested review from a team as code owners September 16, 2026 13:30
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 16, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-16T13:35:04.710662Z ea2df3e Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ea2df3eed0

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread libdd-data-pipeline/src/trace_exporter/stats.rs Outdated
Comment thread libdd-data-pipeline/src/trace_exporter/stats.rs Outdated
Comment thread libdd-data-pipeline/src/trace_exporter/stats.rs Outdated

@ichinaski ichinaski left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Consider adding some tests to cover the new behavior.

Comment thread libdd-data-pipeline/src/trace_exporter/stats.rs Outdated
Comment thread libdd-data-pipeline/src/trace_exporter/stats.rs
Comment thread libdd-data-pipeline/src/trace_exporter/stats.rs Outdated
@Eldolfin
Eldolfin force-pushed the oscarld/follow-full-obfuscation-config-css branch from ea2df3e to f25b36b Compare September 17, 2026 13:05
@Eldolfin
Eldolfin requested a review from a team as a code owner September 17, 2026 13:05
@Eldolfin
Eldolfin force-pushed the oscarld/follow-full-obfuscation-config-css branch from f25b36b to 06c1bc3 Compare September 17, 2026 13:09
@Eldolfin

Copy link
Copy Markdown
Contributor Author

Waiting for 1 more approve on the RFC then I'll merge this

Base automatically changed from oscarld/refactor-agent-info-obfuscation-config-format to main September 21, 2026 12:47
@gh-worker-dd-mergequeue-cf854d
gh-worker-dd-mergequeue-cf854d Bot merged commit 278117f into main Oct 6, 2026
103 checks passed
@gh-worker-dd-mergequeue-cf854d
gh-worker-dd-mergequeue-cf854d Bot deleted the oscarld/follow-full-obfuscation-config-css branch October 6, 2026 15:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants