Skip to content

add session id support to trace export#1822

Draft
mabdinur wants to merge 3 commits intomainfrom
munir/add-session-id-to-trace-exporter
Draft

add session id support to trace export#1822
mabdinur wants to merge 3 commits intomainfrom
munir/add-session-id-to-trace-exporter

Conversation

@mabdinur
Copy link
Copy Markdown
Contributor

What does this PR do?

Adds optional instrumentation session IDs for telemetry on the trace exporter path: FFI (TelemetryClientConfig + wiring), Rust (TelemetryInstrumentationSessions + builder), C example, and a combined telemetry test for runtime id + session headers.

Motivation

Allow trace-exporter telemetry to send dd-session-id / root / parent consistently with the rest of telemetry configuration.

Additional notes

  • TelemetryConfig is unchanged.
  • Not used by dd-trace-php (that path uses the telemetry worker builder).

How to test

cargo test -p libdd-data-pipeline telemetry::tests::runtime_id_and_session_headers_test --lib
cargo test -p libdd-data-pipeline-ffi trace_exporter::tests::config_telemetry_test --lib

Build and run examples/ffi/trace_exporter.c with the updated TelemetryClientConfig fields.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Mar 30, 2026

📚 Documentation Check Results

⚠️ 935 documentation warning(s) found

📦 libdd-data-pipeline - 935 warning(s)


Updated: 2026-04-23 18:04:53 UTC | Commit: 3166cc7 | missing-docs job results

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Mar 30, 2026

Clippy Allow Annotation Report

Comparing clippy allow annotations between branches:

  • Base Branch: origin/main
  • PR Branch: origin/munir/add-session-id-to-trace-exporter

Summary by Rule

Rule Base Branch PR Branch Change
unwrap_used 3 3 No change (0%)
Total 3 3 No change (0%)

Annotation Counts by File

File Base Branch PR Branch Change
libdd-data-pipeline/src/telemetry/mod.rs 1 1 No change (0%)
libdd-data-pipeline/src/trace_exporter/mod.rs 2 2 No change (0%)

Annotation Stats by Crate

Crate Base Branch PR Branch Change
clippy-annotation-reporter 5 5 No change (0%)
datadog-ffe-ffi 1 1 No change (0%)
datadog-ipc 21 21 No change (0%)
datadog-live-debugger 6 6 No change (0%)
datadog-live-debugger-ffi 10 10 No change (0%)
datadog-profiling-replayer 4 4 No change (0%)
datadog-remote-config 3 3 No change (0%)
datadog-sidecar 56 56 No change (0%)
libdd-common 10 10 No change (0%)
libdd-common-ffi 12 12 No change (0%)
libdd-data-pipeline 5 5 No change (0%)
libdd-ddsketch 2 2 No change (0%)
libdd-dogstatsd-client 1 1 No change (0%)
libdd-profiling 13 13 No change (0%)
libdd-telemetry 19 19 No change (0%)
libdd-tinybytes 4 4 No change (0%)
libdd-trace-normalization 2 2 No change (0%)
libdd-trace-obfuscation 8 8 No change (0%)
libdd-trace-stats 1 1 No change (0%)
libdd-trace-utils 15 15 No change (0%)
Total 198 198 No change (0%)

About This Report

This 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.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Mar 30, 2026

🔒 Cargo Deny Results

⚠️ 5 issue(s) found, showing only errors (advisories, bans, sources)

📦 libdd-data-pipeline - 5 error(s)

Show output
error[unsound]: Rand is unsound with a custom logger using `rand::rng()`
    ┌─ /home/runner/work/libdatadog/libdatadog/Cargo.lock:208:1
    │
208 │ rand 0.8.5 registry+https://github.com/rust-lang/crates.io-index
    │ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ unsound advisory detected
    │
    ├ ID: RUSTSEC-2026-0097
    ├ Advisory: https://rustsec.org/advisories/RUSTSEC-2026-0097
    ├ It has been reported (by @lopopolo) that the `rand` library is [unsound](https://rust-lang.github.io/unsafe-code-guidelines/glossary.html#soundness-of-code--of-a-library) (i.e. that safe code using the public API can cause Undefined Behaviour) when all the following conditions are met:
      
      - The `log` and `thread_rng` features are enabled
      - A [custom logger](https://docs.rs/log/latest/log/#implementing-a-logger) is defined
      - The custom logger accesses `rand::rng()` (previously `rand::thread_rng()`) and calls any `TryRng` (previously `RngCore`) methods on `ThreadRng`
      - The `ThreadRng` (attempts to) reseed while called from the custom logger (this happens every 64 kB of generated data)
      - Trace-level logging is enabled or warn-level logging is enabled and the random source (the `getrandom` crate) is unable to provide a new seed
      
      `TryRng` (previously `RngCore`) methods for `ThreadRng` use `unsafe` code to cast `*mut BlockRng<ReseedingCore>` to `&mut BlockRng<ReseedingCore>`. When all the above conditions are met this results in an aliased mutable reference, violating the Stacked Borrows rules. Miri is able to detect this violation in sample code. Since construction of [aliased mutable references is Undefined Behaviour](https://doc.rust-lang.org/stable/nomicon/references.html), the behaviour of optimized builds is hard to predict.
    ├ Announcement: https://github.com/rust-random/rand/pull/1763
    ├ Solution: Upgrade to >=0.10.1 OR <0.10.0, >=0.9.3 OR <0.9.0, >=0.8.6 (try `cargo update -p rand`)
    ├ rand v0.8.5
      ├── libdd-common v3.0.2
      │   ├── libdd-capabilities-impl v0.1.0
      │   │   ├── (dev) libdd-data-pipeline v3.0.1
      │   │   ├── libdd-trace-stats v2.0.0
      │   │   │   └── libdd-data-pipeline v3.0.1 (*)
      │   │   └── libdd-trace-utils v3.0.1
      │   │       ├── libdd-data-pipeline v3.0.1 (*)
      │   │       ├── libdd-trace-stats v2.0.0 (*)
      │   │       └── (dev) libdd-trace-utils v3.0.1 (*)
      │   ├── libdd-data-pipeline v3.0.1 (*)
      │   ├── libdd-dogstatsd-client v2.0.0
      │   │   └── libdd-data-pipeline v3.0.1 (*)
      │   ├── libdd-shared-runtime v0.1.0
      │   │   ├── (dev) libdd-data-pipeline v3.0.1 (*)
      │   │   ├── libdd-telemetry v4.0.0
      │   │   │   └── libdd-data-pipeline v3.0.1 (*)
      │   │   └── libdd-trace-stats v2.0.0 (*)
      │   ├── libdd-telemetry v4.0.0 (*)
      │   ├── libdd-trace-stats v2.0.0 (*)
      │   └── libdd-trace-utils v3.0.1 (*)
      ├── (dev) libdd-data-pipeline v3.0.1 (*)
      ├── (dev) libdd-trace-normalization v2.0.0
      │   └── libdd-trace-utils v3.0.1 (*)
      ├── (dev) libdd-trace-stats v2.0.0 (*)
      ├── libdd-trace-utils v3.0.1 (*)
      └── proptest v1.5.0
          └── (dev) libdd-tinybytes v1.1.0
              ├── libdd-data-pipeline v3.0.1 (*)
              ├── (dev) libdd-tinybytes v1.1.0 (*)
              └── libdd-trace-utils v3.0.1 (*)

error[vulnerability]: Name constraints for URI names were incorrectly accepted
    ┌─ /home/runner/work/libdatadog/libdatadog/Cargo.lock:230:1
    │
230 │ rustls-webpki 0.103.10 registry+https://github.com/rust-lang/crates.io-index
    │ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ security vulnerability detected
    │
    ├ ID: RUSTSEC-2026-0098
    ├ Advisory: https://rustsec.org/advisories/RUSTSEC-2026-0098
    ├ Name constraints for URI names were ignored and therefore accepted.
      
      Note this library does not provide an API for asserting URI names, and URI name constraints are otherwise not implemented.  URI name constraints are now rejected unconditionally.
      
      Since name constraints are restrictions on otherwise properly-issued certificates, this bug is reachable only after signature verification and requires misissuance to exploit.
      
      This vulnerability is identified as [GHSA-965h-392x-2mh5](https://github.com/rustls/webpki/security/advisories/GHSA-965h-392x-2mh5). Thank you to @1seal for the report.
    ├ Solution: Upgrade to >=0.103.12, <0.104.0-alpha.1 OR >=0.104.0-alpha.6 (try `cargo update -p rustls-webpki`)
    ├ rustls-webpki v0.103.10
      └── rustls v0.23.37
          ├── hyper-rustls v0.27.7
          │   └── libdd-common v3.0.2
          │       ├── libdd-capabilities-impl v0.1.0
          │       │   ├── (dev) libdd-data-pipeline v3.0.1
          │       │   ├── libdd-trace-stats v2.0.0
          │       │   │   └── libdd-data-pipeline v3.0.1 (*)
          │       │   └── libdd-trace-utils v3.0.1
          │       │       ├── libdd-data-pipeline v3.0.1 (*)
          │       │       ├── libdd-trace-stats v2.0.0 (*)
          │       │       └── (dev) libdd-trace-utils v3.0.1 (*)
          │       ├── libdd-data-pipeline v3.0.1 (*)
          │       ├── libdd-dogstatsd-client v2.0.0
          │       │   └── libdd-data-pipeline v3.0.1 (*)
          │       ├── libdd-shared-runtime v0.1.0
          │       │   ├── (dev) libdd-data-pipeline v3.0.1 (*)
          │       │   ├── libdd-telemetry v4.0.0
          │       │   │   └── libdd-data-pipeline v3.0.1 (*)
          │       │   └── libdd-trace-stats v2.0.0 (*)
          │       ├── libdd-telemetry v4.0.0 (*)
          │       ├── libdd-trace-stats v2.0.0 (*)
          │       └── libdd-trace-utils v3.0.1 (*)
          ├── libdd-common v3.0.2 (*)
          └── tokio-rustls v0.26.0
              ├── hyper-rustls v0.27.7 (*)
              └── libdd-common v3.0.2 (*)

error[vulnerability]: Name constraints were accepted for certificates asserting a wildcard name
    ┌─ /home/runner/work/libdatadog/libdatadog/Cargo.lock:230:1
    │
230 │ rustls-webpki 0.103.10 registry+https://github.com/rust-lang/crates.io-index
    │ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ security vulnerability detected
    │
    ├ ID: RUSTSEC-2026-0099
    ├ Advisory: https://rustsec.org/advisories/RUSTSEC-2026-0099
    ├ Permitted subtree name constraints for DNS names were accepted for certificates asserting a wildcard name.
      
      This was incorrect because, given a name constraint of `accept.example.com`, `*.example.com` could feasibly allow a name of `reject.example.com` which is outside the constraint.
      This is very similar to [CVE-2025-61727](https://go.dev/issue/76442).
      
      Since name constraints are restrictions on otherwise properly-issued certificates, this bug is reachable only after signature verification and requires misissuance to exploit.
      
      This vulnerability is identified as [GHSA-xgp8-3hg3-c2mh](https://github.com/rustls/webpki/security/advisories/GHSA-xgp8-3hg3-c2mh). Thank you to @1seal for the report.
    ├ Solution: Upgrade to >=0.103.12, <0.104.0-alpha.1 OR >=0.104.0-alpha.6 (try `cargo update -p rustls-webpki`)
    ├ rustls-webpki v0.103.10
      └── rustls v0.23.37
          ├── hyper-rustls v0.27.7
          │   └── libdd-common v3.0.2
          │       ├── libdd-capabilities-impl v0.1.0
          │       │   ├── (dev) libdd-data-pipeline v3.0.1
          │       │   ├── libdd-trace-stats v2.0.0
          │       │   │   └── libdd-data-pipeline v3.0.1 (*)
          │       │   └── libdd-trace-utils v3.0.1
          │       │       ├── libdd-data-pipeline v3.0.1 (*)
          │       │       ├── libdd-trace-stats v2.0.0 (*)
          │       │       └── (dev) libdd-trace-utils v3.0.1 (*)
          │       ├── libdd-data-pipeline v3.0.1 (*)
          │       ├── libdd-dogstatsd-client v2.0.0
          │       │   └── libdd-data-pipeline v3.0.1 (*)
          │       ├── libdd-shared-runtime v0.1.0
          │       │   ├── (dev) libdd-data-pipeline v3.0.1 (*)
          │       │   ├── libdd-telemetry v4.0.0
          │       │   │   └── libdd-data-pipeline v3.0.1 (*)
          │       │   └── libdd-trace-stats v2.0.0 (*)
          │       ├── libdd-telemetry v4.0.0 (*)
          │       ├── libdd-trace-stats v2.0.0 (*)
          │       └── libdd-trace-utils v3.0.1 (*)
          ├── libdd-common v3.0.2 (*)
          └── tokio-rustls v0.26.0
              ├── hyper-rustls v0.27.7 (*)
              └── libdd-common v3.0.2 (*)

error[vulnerability]: Reachable panic in certificate revocation list parsing
    ┌─ /home/runner/work/libdatadog/libdatadog/Cargo.lock:230:1
    │
230 │ rustls-webpki 0.103.10 registry+https://github.com/rust-lang/crates.io-index
    │ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ security vulnerability detected
    │
    ├ ID: RUSTSEC-2026-0104
    ├ Advisory: https://rustsec.org/advisories/RUSTSEC-2026-0104
    ├ A panic was reachable when parsing certificate revocation lists via [`BorrowedCertRevocationList::from_der`]
      or [`OwnedCertRevocationList::from_der`].  This was the result of mishandling a syntactically valid empty
      `BIT STRING` appearing in the `onlySomeReasons` element of a `IssuingDistributionPoint` CRL extension.
      
      This panic is reachable prior to a CRL's signature being verified.
      
      Applications that do not use CRLs are not affected.
      
      Thank you to @tynus3 for the report.
    ├ Solution: Upgrade to >=0.103.13, <0.104.0-alpha.1 OR >=0.104.0-alpha.7 (try `cargo update -p rustls-webpki`)
    ├ rustls-webpki v0.103.10
      └── rustls v0.23.37
          ├── hyper-rustls v0.27.7
          │   └── libdd-common v3.0.2
          │       ├── libdd-capabilities-impl v0.1.0
          │       │   ├── (dev) libdd-data-pipeline v3.0.1
          │       │   ├── libdd-trace-stats v2.0.0
          │       │   │   └── libdd-data-pipeline v3.0.1 (*)
          │       │   └── libdd-trace-utils v3.0.1
          │       │       ├── libdd-data-pipeline v3.0.1 (*)
          │       │       ├── libdd-trace-stats v2.0.0 (*)
          │       │       └── (dev) libdd-trace-utils v3.0.1 (*)
          │       ├── libdd-data-pipeline v3.0.1 (*)
          │       ├── libdd-dogstatsd-client v2.0.0
          │       │   └── libdd-data-pipeline v3.0.1 (*)
          │       ├── libdd-shared-runtime v0.1.0
          │       │   ├── (dev) libdd-data-pipeline v3.0.1 (*)
          │       │   ├── libdd-telemetry v4.0.0
          │       │   │   └── libdd-data-pipeline v3.0.1 (*)
          │       │   └── libdd-trace-stats v2.0.0 (*)
          │       ├── libdd-telemetry v4.0.0 (*)
          │       ├── libdd-trace-stats v2.0.0 (*)
          │       └── libdd-trace-utils v3.0.1 (*)
          ├── libdd-common v3.0.2 (*)
          └── tokio-rustls v0.26.0
              ├── hyper-rustls v0.27.7 (*)
              └── libdd-common v3.0.2 (*)

error[vulnerability]: Denial of Service via Stack Exhaustion
    ┌─ /home/runner/work/libdatadog/libdatadog/Cargo.lock:270:1
    │
270 │ time 0.3.41 registry+https://github.com/rust-lang/crates.io-index
    │ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ security vulnerability detected
    │
    ├ ID: RUSTSEC-2026-0009
    ├ Advisory: https://rustsec.org/advisories/RUSTSEC-2026-0009
    ├ ## Impact
      
      When user-provided input is provided to any type that parses with the RFC 2822 format, a denial of
      service attack via stack exhaustion is possible. The attack relies on formally deprecated and
      rarely-used features that are part of the RFC 2822 format used in a malicious manner. Ordinary,
      non-malicious input will never encounter this scenario.
      
      ## Patches
      
      A limit to the depth of recursion was added in v0.3.47. From this version, an error will be returned
      rather than exhausting the stack.
      
      ## Workarounds
      
      Limiting the length of user input is the simplest way to avoid stack exhaustion, as the amount of
      the stack consumed would be at most a factor of the length of the input.
    ├ Announcement: https://github.com/time-rs/time/blob/main/CHANGELOG.md#0347-2026-02-05
    ├ Solution: Upgrade to >=0.3.47 (try `cargo update -p time`)
    ├ time v0.3.41
      └── tracing-appender v0.2.3
          └── libdd-log v1.0.0
              └── (dev) libdd-data-pipeline v3.0.1

advisories FAILED, bans ok, sources ok

Updated: 2026-04-23 18:06:42 UTC | Commit: 3166cc7 | dependency-check job results

@datadog-datadog-prod-us1
Copy link
Copy Markdown
Contributor

datadog-datadog-prod-us1 Bot commented Mar 30, 2026

Tests

🎉 All green!

❄️ No new flaky tests detected
🧪 All tests passed

🎯 Code Coverage (details)
Patch Coverage: 95.04%
Overall Coverage: 71.81% (+0.07%)

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: d4624a3 | Docs | Datadog PR Page | Give us feedback!

@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Mar 30, 2026

Codecov Report

❌ Patch coverage is 95.04132% with 6 lines in your changes missing coverage. Please review.
✅ Project coverage is 71.80%. Comparing base (950562b) to head (d4624a3).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1822      +/-   ##
==========================================
+ Coverage   71.73%   71.80%   +0.06%     
==========================================
  Files         434      434              
  Lines       69954    70074     +120     
==========================================
+ Hits        50183    50318     +135     
+ Misses      19771    19756      -15     
Components Coverage Δ
libdd-crashtracker 65.97% <ø> (ø)
libdd-crashtracker-ffi 34.09% <ø> (ø)
libdd-alloc 98.77% <ø> (ø)
libdd-data-pipeline 86.22% <95.04%> (+0.57%) ⬆️
libdd-data-pipeline-ffi 73.82% <93.47%> (+3.11%) ⬆️
libdd-common 79.41% <ø> (ø)
libdd-common-ffi 73.87% <ø> (ø)
libdd-telemetry 68.09% <ø> (+0.02%) ⬆️
libdd-telemetry-ffi 19.37% <ø> (ø)
libdd-dogstatsd-client 82.64% <ø> (ø)
datadog-ipc 76.31% <ø> (ø)
libdd-profiling 81.61% <ø> (+0.01%) ⬆️
libdd-profiling-ffi 64.36% <ø> (ø)
datadog-sidecar 29.11% <ø> (ø)
datdog-sidecar-ffi 7.20% <ø> (ø)
spawn-worker 54.69% <ø> (ø)
libdd-tinybytes 93.16% <ø> (ø)
libdd-trace-normalization 81.71% <ø> (ø)
libdd-trace-obfuscation 87.26% <ø> (ø)
libdd-trace-protobuf 68.25% <ø> (ø)
libdd-trace-utils 89.27% <ø> (ø)
datadog-tracer-flare 86.88% <ø> (ø)
libdd-log 74.69% <ø> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@pr-commenter
Copy link
Copy Markdown

pr-commenter Bot commented Mar 30, 2026

Benchmarks

Comparison

Benchmark execution time: 2026-03-30 18:50:09

Comparing candidate commit d01347e in PR branch munir/add-session-id-to-trace-exporter with baseline commit 9ec69fa in branch munir/add-session-id-support-telemetry.

Found 1 performance improvements and 0 performance regressions! Performance is the same for 61 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:profile_add_sample2_frames_x1000

  • 🟩 execution_time [-39.584µs; -37.614µs] or [-5.206%; -4.947%]

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 d01347e 1774895527 munir/add-session-id-to-trace-exporter
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 910.711µs 914.703µs ± 2.443µs 914.166µs ± 0.851µs 915.187µs 918.657µs 923.860µs 932.376µs 1.99% 3.394 17.588 0.27% 0.173µ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 [914.364µs; 915.042µs] or [-0.037%; +0.037%] None None None

Group 2

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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.178ms 4.182ms ± 0.002ms 4.182ms ± 0.001ms 4.183ms 4.185ms 4.190ms 4.194ms 0.28% 1.723 7.442 0.05% 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.182ms; 4.183ms] or [-0.007%; +0.007%] None None None

Group 3

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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.365µs 5.430µs ± 0.035µs 5.424µs ± 0.018µs 5.445µs 5.483µs 5.553µs 5.616µs 3.54% 1.625 5.339 0.64% 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.425µs; 5.435µs] or [-0.088%; +0.088%] None None None

Group 4

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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 14.865µs 15.214µs ± 0.242µs 15.146µs ± 0.124µs 15.361µs 15.598µs 15.709µs 17.063µs 12.66% 2.564 15.375 1.59% 0.017µ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.180µs; 15.247µs] or [-0.221%; +0.221%] None None None

Group 5

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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 162.073µs 163.548µs ± 0.425µs 163.476µs ± 0.193µs 163.767µs 164.330µs 164.890µs 165.501µs 1.24% 0.858 2.988 0.26% 0.030µ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 [163.490µs; 163.607µs] or [-0.036%; +0.036%] None None None

Group 6

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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 50.660ms 50.950ms ± 1.298ms 50.793ms ± 0.042ms 50.830ms 50.947ms 57.955ms 65.198ms 28.36% 9.015 85.227 2.54% 0.092ms 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 [50.770ms; 51.130ms] or [-0.353%; +0.353%] None None None

Group 7

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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 243.229ns 255.828ns ± 13.014ns 250.123ns ± 4.963ns 264.611ns 283.845ns 288.092ns 289.124ns 15.59% 1.125 -0.078 5.07% 0.920ns 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 [254.024ns; 257.632ns] or [-0.705%; +0.705%] None None None

Group 8

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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.013µs 5.118µs ± 0.054µs 5.125µs ± 0.052µs 5.155µs 5.197µs 5.200µs 5.202µs 1.50% -0.143 -1.278 1.05% 0.004µ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.110µs; 5.125µs] or [-0.145%; +0.145%] None None None

Group 9

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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.253ns 192.821ns ± 1.977ns 192.703ns ± 1.295ns 193.671ns 196.570ns 198.628ns 199.208ns 3.38% 1.010 0.771 1.02% 0.140ns 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.547ns; 193.095ns] or [-0.142%; +0.142%] None None None

Group 10

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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.771ms 13.820ms ± 0.025ms 13.818ms ± 0.012ms 13.830ms 13.856ms 13.893ms 13.998ms 1.30% 2.314 13.034 0.18% 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.817ms; 13.824ms] or [-0.025%; +0.025%] None None None

Group 11

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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 720.593µs 721.722µs ± 0.420µs 721.694µs ± 0.255µs 721.989µs 722.477µs 722.700µs 722.833µs 0.16% 0.155 0.076 0.06% 0.030µ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 [721.663µs; 721.780µs] or [-0.008%; +0.008%] None None None

Group 12

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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.160µs 33.985µs ± 1.467µs 33.305µs ± 0.062µs 33.412µs 37.133µs 37.196µs 38.474µs 15.52% 1.717 1.024 4.31% 0.104µ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 [33.782µs; 34.188µs] or [-0.598%; +0.598%] None None None

Group 13

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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.369µs 2.421µs ± 0.019µs 2.419µs ± 0.008µs 2.427µs 2.467µs 2.473µs 2.477µs 2.41% 0.708 1.804 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.418µs; 2.423µs] or [-0.108%; +0.108%] None None None

Group 14

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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.181ms 4.187ms ± 0.009ms 4.185ms ± 0.001ms 4.187ms 4.192ms 4.213ms 4.290ms 2.50% 8.731 94.461 0.21% 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.185ms; 4.188ms] or [-0.029%; +0.029%] None None None

Group 15

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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 145.213µs 147.497µs ± 1.822µs 147.205µs ± 0.596µs 147.837µs 149.182µs 154.233µs 165.327µs 12.31% 5.865 49.030 1.23% 0.129µ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 [147.244µs; 147.749µs] or [-0.171%; +0.171%] None None None

Group 16

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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.605ms 3.634ms ± 0.017ms 3.631ms ± 0.008ms 3.640ms 3.666ms 3.686ms 3.700ms 1.88% 1.231 2.035 0.46% 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.631ms; 3.636ms] or [-0.063%; +0.063%] None None None

Group 17

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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.789ms 14.850ms ± 0.035ms 14.842ms ± 0.021ms 14.871ms 14.919ms 14.941ms 14.965ms 0.83% 0.786 0.140 0.23% 0.002ms 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.846ms; 14.855ms] or [-0.033%; +0.033%] None None None

Group 18

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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.750µs 186.265µs ± 0.371µs 186.219µs ± 0.226µs 186.440µs 186.872µs 187.789µs 188.119µs 1.02% 1.645 4.931 0.20% 0.026µs 1 200
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput 5315772.855op/s 5368717.432op/s ± 10649.330op/s 5370022.761op/s ± 6528.005op/s 5376645.980op/s 5380895.318op/s 5382766.653op/s 5383575.009op/s 0.25% -1.620 4.790 0.20% 753.021op/s 1 200
normalization/normalize_name/normalize_name/bad-name execution_time 17.814µs 17.915µs ± 0.127µs 17.898µs ± 0.024µs 17.926µs 18.025µs 18.092µs 19.505µs 8.98% 10.063 121.206 0.71% 0.009µs 1 200
normalization/normalize_name/normalize_name/bad-name throughput 51268993.762op/s 55820558.636op/s ± 370279.505op/s 55872151.379op/s ± 74876.659op/s 55923982.889op/s 56075835.646op/s 56126835.302op/s 56136682.916op/s 0.47% -9.603 113.137 0.66% 26182.715op/s 1 200
normalization/normalize_name/normalize_name/good execution_time 10.563µs 10.622µs ± 0.039µs 10.612µs ± 0.018µs 10.634µs 10.691µs 10.775µs 10.814µs 1.91% 2.080 6.197 0.37% 0.003µs 1 200
normalization/normalize_name/normalize_name/good throughput 92471415.039op/s 94149352.720op/s ± 345283.603op/s 94234299.566op/s ± 157063.025op/s 94334680.376op/s 94564961.866op/s 94636135.866op/s 94673906.209op/s 0.47% -2.038 5.982 0.37% 24415.238op/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 [186.214µs; 186.316µs] or [-0.028%; +0.028%] None None None
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput [5367241.537op/s; 5370193.327op/s] or [-0.027%; +0.027%] None None None
normalization/normalize_name/normalize_name/bad-name execution_time [17.898µs; 17.933µs] or [-0.098%; +0.098%] None None None
normalization/normalize_name/normalize_name/bad-name throughput [55769241.458op/s; 55871875.814op/s] or [-0.092%; +0.092%] None None None
normalization/normalize_name/normalize_name/good execution_time [10.616µs; 10.627µs] or [-0.051%; +0.051%] None None None
normalization/normalize_name/normalize_name/good throughput [94101499.733op/s; 94197205.706op/s] or [-0.051%; +0.051%] None None None

Group 19

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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.902µs 3.917µs ± 0.004µs 3.916µs ± 0.003µs 3.919µs 3.924µs 3.927µs 3.929µs 0.34% 0.559 0.723 0.10% 0.000µs 1 200
credit_card/is_card_number/ throughput 254515634.525op/s 255323039.069op/s ± 257356.086op/s 255375981.889op/s ± 165000.071op/s 255515608.037op/s 255607891.057op/s 255714693.255op/s 256268416.784op/s 0.35% -0.552 0.725 0.10% 18197.823op/s 1 200
credit_card/is_card_number/ 3782-8224-6310-005 execution_time 79.172µs 79.732µs ± 0.355µs 79.685µs ± 0.253µs 79.973µs 80.337µs 80.508µs 81.430µs 2.19% 0.916 1.731 0.44% 0.025µs 1 200
credit_card/is_card_number/ 3782-8224-6310-005 throughput 12280461.172op/s 12542195.567op/s ± 55631.348op/s 12549417.065op/s ± 39784.968op/s 12584338.797op/s 12617511.279op/s 12626465.746op/s 12630653.333op/s 0.65% -0.879 1.558 0.44% 3933.730op/s 1 200
credit_card/is_card_number/ 378282246310005 execution_time 72.378µs 73.037µs ± 0.342µs 73.008µs ± 0.228µs 73.231µs 73.658µs 73.878µs 74.318µs 1.80% 0.638 0.428 0.47% 0.024µs 1 200
credit_card/is_card_number/ 378282246310005 throughput 13455608.474op/s 13692074.949op/s ± 63991.986op/s 13697175.716op/s ± 42571.811op/s 13743184.868op/s 13777526.845op/s 13809634.439op/s 13816330.742op/s 0.87% -0.610 0.362 0.47% 4524.917op/s 1 200
credit_card/is_card_number/37828224631 execution_time 3.895µs 3.917µs ± 0.004µs 3.916µs ± 0.003µs 3.919µs 3.924µs 3.928µs 3.937µs 0.55% 0.385 4.171 0.11% 0.000µs 1 200
credit_card/is_card_number/37828224631 throughput 253997374.465op/s 255323579.927op/s ± 286657.638op/s 255389884.479op/s ± 173347.893op/s 255502210.839op/s 255640725.653op/s 255731837.224op/s 256758077.772op/s 0.54% -0.365 4.194 0.11% 20269.756op/s 1 200
credit_card/is_card_number/378282246310005 execution_time 69.306µs 69.690µs ± 0.266µs 69.634µs ± 0.150µs 69.829µs 70.121µs 70.737µs 70.915µs 1.84% 1.523 3.699 0.38% 0.019µs 1 200
credit_card/is_card_number/378282246310005 throughput 14101395.891op/s 14349406.821op/s ± 54388.238op/s 14360868.071op/s ± 30835.954op/s 14388298.000op/s 14413130.006op/s 14426923.555op/s 14428730.488op/s 0.47% -1.485 3.514 0.38% 3845.829op/s 1 200
credit_card/is_card_number/37828224631000521389798 execution_time 52.284µs 52.374µs ± 0.052µs 52.366µs ± 0.034µs 52.405µs 52.480µs 52.505µs 52.572µs 0.39% 0.796 0.431 0.10% 0.004µs 1 200
credit_card/is_card_number/37828224631000521389798 throughput 19021430.614op/s 19093469.837op/s ± 19004.113op/s 19096426.711op/s ± 12578.446op/s 19107783.452op/s 19119303.633op/s 19122142.630op/s 19126336.826op/s 0.16% -0.791 0.417 0.10% 1343.794op/s 1 200
credit_card/is_card_number/x371413321323331 execution_time 5.710µs 5.852µs ± 0.052µs 5.850µs ± 0.036µs 5.885µs 5.940µs 5.967µs 5.972µs 2.09% 0.010 -0.397 0.89% 0.004µs 1 200
credit_card/is_card_number/x371413321323331 throughput 167436147.946op/s 170898351.730op/s ± 1524727.638op/s 170943336.472op/s ± 1050165.864op/s 172009363.383op/s 173344387.131op/s 174173563.604op/s 175137271.138op/s 2.45% 0.033 -0.383 0.89% 107814.525op/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.002µs 3.918µs 3.922µs 3.924µs 3.930µs 0.36% -0.344 5.707 0.09% 0.000µs 1 200
credit_card/is_card_number_no_luhn/ throughput 254483946.329op/s 255365816.626op/s ± 239635.600op/s 255411270.014op/s ± 145577.723op/s 255537720.354op/s 255642759.421op/s 255755752.996op/s 256788009.479op/s 0.54% 0.366 5.811 0.09% 16944.796op/s 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time 64.044µs 64.414µs ± 0.164µs 64.397µs ± 0.100µs 64.508µs 64.735µs 64.862µs 65.113µs 1.11% 0.805 1.292 0.25% 0.012µs 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput 15357988.812op/s 15524706.005op/s ± 39409.635op/s 15528746.352op/s ± 24095.935op/s 15550739.181op/s 15577377.676op/s 15600939.738op/s 15614327.707op/s 0.55% -0.785 1.235 0.25% 2786.682op/s 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time 57.823µs 58.081µs ± 0.190µs 58.027µs ± 0.097µs 58.156µs 58.502µs 58.613µs 58.839µs 1.40% 1.455 2.014 0.33% 0.013µs 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 throughput 16995476.747op/s 17217488.018op/s ± 56161.724op/s 17233471.950op/s ± 28751.299op/s 17257558.066op/s 17277360.697op/s 17284050.351op/s 17294123.457op/s 0.35% -1.436 1.941 0.33% 3971.234op/s 1 200
credit_card/is_card_number_no_luhn/37828224631 execution_time 3.893µs 3.916µs ± 0.004µs 3.916µs ± 0.003µs 3.919µs 3.923µs 3.927µs 3.929µs 0.34% -0.243 4.921 0.10% 0.000µs 1 200
credit_card/is_card_number_no_luhn/37828224631 throughput 254498718.239op/s 255342651.003op/s ± 267783.081op/s 255373543.302op/s ± 173788.788op/s 255527546.575op/s 255656849.492op/s 255733108.547op/s 256878619.019op/s 0.59% 0.264 5.019 0.10% 18935.123op/s 1 200
credit_card/is_card_number_no_luhn/378282246310005 execution_time 54.616µs 54.887µs ± 0.222µs 54.816µs ± 0.108µs 55.003µs 55.312µs 55.634µs 55.878µs 1.94% 1.520 2.611 0.40% 0.016µs 1 200
credit_card/is_card_number_no_luhn/378282246310005 throughput 17896106.355op/s 18219533.310op/s ± 73147.347op/s 18242864.262op/s ± 36160.561op/s 18271155.788op/s 18292760.642op/s 18305660.843op/s 18309491.640op/s 0.37% -1.492 2.480 0.40% 5172.299op/s 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time 52.175µs 52.289µs ± 0.066µs 52.283µs ± 0.044µs 52.328µs 52.390µs 52.468µs 52.514µs 0.44% 0.629 0.321 0.13% 0.005µs 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput 19042360.678op/s 19124411.241op/s ± 23972.034op/s 19126748.762op/s ± 16267.961op/s 19142489.151op/s 19157780.921op/s 19162765.050op/s 19166292.372op/s 0.21% -0.622 0.303 0.13% 1695.079op/s 1 200
credit_card/is_card_number_no_luhn/x371413321323331 execution_time 5.711µs 5.844µs ± 0.059µs 5.842µs ± 0.038µs 5.881µs 5.939µs 5.966µs 5.977µs 2.31% 0.105 -0.654 1.00% 0.004µs 1 200
credit_card/is_card_number_no_luhn/x371413321323331 throughput 167314123.701op/s 171145147.758op/s ± 1717000.423op/s 171175669.885op/s ± 1113462.938op/s 172286805.417op/s 173973845.773op/s 174301011.512op/s 175100844.357op/s 2.29% -0.064 -0.661 1.00% 121410.264op/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.916µs; 3.917µs] or [-0.014%; +0.014%] None None None
credit_card/is_card_number/ throughput [255287371.990op/s; 255358706.147op/s] or [-0.014%; +0.014%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 execution_time [79.683µs; 79.782µs] or [-0.062%; +0.062%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 throughput [12534485.597op/s; 12549905.537op/s] or [-0.061%; +0.061%] None None None
credit_card/is_card_number/ 378282246310005 execution_time [72.989µs; 73.084µs] or [-0.065%; +0.065%] None None None
credit_card/is_card_number/ 378282246310005 throughput [13683206.275op/s; 13700943.623op/s] or [-0.065%; +0.065%] None None None
credit_card/is_card_number/37828224631 execution_time [3.916µs; 3.917µs] or [-0.016%; +0.016%] None None None
credit_card/is_card_number/37828224631 throughput [255283851.935op/s; 255363307.919op/s] or [-0.016%; +0.016%] None None None
credit_card/is_card_number/378282246310005 execution_time [69.653µs; 69.727µs] or [-0.053%; +0.053%] None None None
credit_card/is_card_number/378282246310005 throughput [14341869.134op/s; 14356944.508op/s] or [-0.053%; +0.053%] None None None
credit_card/is_card_number/37828224631000521389798 execution_time [52.367µs; 52.381µs] or [-0.014%; +0.014%] None None None
credit_card/is_card_number/37828224631000521389798 throughput [19090836.050op/s; 19096103.624op/s] or [-0.014%; +0.014%] None None None
credit_card/is_card_number/x371413321323331 execution_time [5.845µs; 5.859µs] or [-0.124%; +0.124%] None None None
credit_card/is_card_number/x371413321323331 throughput [170687039.144op/s; 171109664.317op/s] or [-0.124%; +0.124%] None None None
credit_card/is_card_number_no_luhn/ execution_time [3.915µs; 3.916µs] or [-0.013%; +0.013%] None None None
credit_card/is_card_number_no_luhn/ throughput [255332605.436op/s; 255399027.815op/s] or [-0.013%; +0.013%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time [64.391µs; 64.437µs] or [-0.035%; +0.035%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput [15519244.208op/s; 15530167.801op/s] or [-0.035%; +0.035%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time [58.055µs; 58.107µs] or [-0.045%; +0.045%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 throughput [17209704.543op/s; 17225271.492op/s] or [-0.045%; +0.045%] None None None
credit_card/is_card_number_no_luhn/37828224631 execution_time [3.916µs; 3.917µs] or [-0.015%; +0.015%] None None None
credit_card/is_card_number_no_luhn/37828224631 throughput [255305538.843op/s; 255379763.162op/s] or [-0.015%; +0.015%] None None None
credit_card/is_card_number_no_luhn/378282246310005 execution_time [54.856µs; 54.918µs] or [-0.056%; +0.056%] None None None
credit_card/is_card_number_no_luhn/378282246310005 throughput [18209395.792op/s; 18229670.829op/s] or [-0.056%; +0.056%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time [52.280µs; 52.298µs] or [-0.017%; +0.017%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput [19121088.948op/s; 19127733.535op/s] or [-0.017%; +0.017%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 execution_time [5.835µs; 5.852µs] or [-0.139%; +0.139%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 throughput [170907188.013op/s; 171383107.503op/s] or [-0.139%; +0.139%] None None None

Group 20

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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.783µs 497.051µs ± 1.358µs 496.698µs ± 0.413µs 497.215µs 500.081µs 500.735µs 507.253µs 2.13% 3.781 20.101 0.27% 0.096µs 1 200
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput 1971402.183op/s 2011881.272op/s ± 5441.174op/s 2013297.382op/s ± 1675.095op/s 2014860.097op/s 2016199.977op/s 2016665.601op/s 2017013.283op/s 0.18% -3.718 19.437 0.27% 384.749op/s 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time 370.852µs 371.850µs ± 0.484µs 371.778µs ± 0.292µs 372.089µs 372.809µs 373.170µs 374.167µs 0.64% 1.115 2.302 0.13% 0.034µs 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput 2672605.584op/s 2689259.772op/s ± 3492.704op/s 2689778.963op/s ± 2112.192op/s 2691652.930op/s 2693901.038op/s 2694880.311op/s 2696496.009op/s 0.25% -1.103 2.251 0.13% 246.971op/s 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time 167.926µs 168.394µs ± 0.239µs 168.367µs ± 0.145µs 168.535µs 168.791µs 169.023µs 169.280µs 0.54% 0.602 0.488 0.14% 0.017µs 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput 5907379.705op/s 5938477.530op/s ± 8409.981op/s 5939397.975op/s ± 5135.519op/s 5944203.147op/s 5950730.375op/s 5953310.152op/s 5954986.671op/s 0.26% -0.593 0.465 0.14% 594.675op/s 1 200
normalization/normalize_service/normalize_service/[empty string] execution_time 36.787µs 37.020µs ± 0.115µs 37.052µs ± 0.068µs 37.105µs 37.172µs 37.209µs 37.321µs 0.73% -0.440 -0.695 0.31% 0.008µs 1 200
normalization/normalize_service/normalize_service/[empty string] throughput 26794557.464op/s 27012600.461op/s ± 83987.075op/s 26989340.672op/s ± 49770.593op/s 27073812.495op/s 27168336.895op/s 27180259.202op/s 27183710.609op/s 0.72% 0.451 -0.695 0.31% 5938.783op/s 1 200
normalization/normalize_service/normalize_service/test_ASCII execution_time 46.272µs 46.447µs ± 0.137µs 46.417µs ± 0.046µs 46.489µs 46.627µs 46.729µs 47.928µs 3.26% 6.687 66.754 0.29% 0.010µs 1 200
normalization/normalize_service/normalize_service/test_ASCII throughput 20864654.464op/s 21529949.388op/s ± 62369.584op/s 21544032.052op/s ± 21268.211op/s 21559983.377op/s 21581277.206op/s 21595606.402op/s 21611528.454op/s 0.31% -6.478 63.625 0.29% 4410.196op/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 [496.863µs; 497.239µs] or [-0.038%; +0.038%] None None None
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput [2011127.177op/s; 2012635.366op/s] or [-0.037%; +0.037%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time [371.783µs; 371.917µs] or [-0.018%; +0.018%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput [2688775.717op/s; 2689743.828op/s] or [-0.018%; +0.018%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time [168.361µs; 168.427µs] or [-0.020%; +0.020%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput [5937311.988op/s; 5939643.073op/s] or [-0.020%; +0.020%] None None None
normalization/normalize_service/normalize_service/[empty string] execution_time [37.004µs; 37.036µs] or [-0.043%; +0.043%] None None None
normalization/normalize_service/normalize_service/[empty string] throughput [27000960.660op/s; 27024240.262op/s] or [-0.043%; +0.043%] None None None
normalization/normalize_service/normalize_service/test_ASCII execution_time [46.428µs; 46.466µs] or [-0.041%; +0.041%] None None None
normalization/normalize_service/normalize_service/test_ASCII throughput [21521305.564op/s; 21538593.213op/s] or [-0.040%; +0.040%] None None None

Group 21

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz d01347e 1774895527 munir/add-session-id-to-trace-exporter
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.584µs 290.571µs ± 0.699µs 290.468µs ± 0.149µs 290.639µs 291.245µs 292.253µs 298.732µs 2.84% 8.382 91.835 0.24% 0.049µ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.474µs; 290.668µs] or [-0.033%; +0.033%] None None None

Baseline

Omitted due to size.

@dd-octo-sts
Copy link
Copy Markdown
Contributor

dd-octo-sts Bot commented Mar 30, 2026

Artifact Size Benchmark Report

aarch64-alpine-linux-musl
Artifact Baseline Commit Change
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.so 7.63 MB 7.63 MB 0% (0 B) 👌
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.a 83.34 MB 83.33 MB --.01% (-16.88 KB) 💪
aarch64-unknown-linux-gnu
Artifact Baseline Commit Change
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.a 99.41 MB 99.45 MB +.04% (+42.17 KB) 🔍
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so 10.10 MB 10.17 MB +.62% (+65.15 KB) 🔍
libdatadog-x64-windows
Artifact Baseline Commit Change
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.dll 25.17 MB 25.18 MB +.02% (+7.00 KB) 🔍
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.lib 79.90 KB 79.90 KB 0% (0 B) 👌
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.pdb 184.45 MB 184.45 MB 0% (0 B) 👌
/libdatadog-x64-windows/debug/static/datadog_profiling_ffi.lib 918.37 MB 918.41 MB +0% (+44.81 KB) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.dll 7.89 MB 7.90 MB +.06% (+5.00 KB) 🔍
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.lib 79.90 KB 79.90 KB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.pdb 23.67 MB 23.68 MB +.03% (+8.00 KB) 🔍
/libdatadog-x64-windows/release/static/datadog_profiling_ffi.lib 46.19 MB 46.21 MB +.04% (+19.74 KB) 🔍
libdatadog-x86-windows
Artifact Baseline Commit Change
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.dll 21.66 MB 21.66 MB +.02% (+6.00 KB) 🔍
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.lib 81.14 KB 81.14 KB 0% (0 B) 👌
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.pdb 188.55 MB 188.55 MB 0% (0 B) 👌
/libdatadog-x86-windows/debug/static/datadog_profiling_ffi.lib 903.78 MB 903.82 MB +0% (+42.87 KB) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.dll 6.13 MB 6.13 MB +.04% (+3.00 KB) 🔍
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.lib 81.14 KB 81.14 KB 0% (0 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.pdb 25.36 MB 25.37 MB +.03% (+8.00 KB) 🔍
/libdatadog-x86-windows/release/static/datadog_profiling_ffi.lib 43.67 MB 43.69 MB +.03% (+17.37 KB) 🔍
x86_64-alpine-linux-musl
Artifact Baseline Commit Change
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.a 74.43 MB 74.30 MB --.17% (-133.68 KB) 💪
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.so 8.52 MB 8.55 MB +.27% (+24.00 KB) 🔍
x86_64-unknown-linux-gnu
Artifact Baseline Commit Change
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.a 91.78 MB 91.82 MB +.03% (+36.46 KB) 🔍
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so 10.20 MB 10.20 MB +.04% (+4.87 KB) 🔍

@mabdinur mabdinur force-pushed the munir/add-session-id-to-trace-exporter branch from 0b9c1a7 to d01347e Compare April 3, 2026 19:31
@mabdinur mabdinur force-pushed the munir/add-session-id-support-telemetry branch from 2974373 to 97c7629 Compare April 3, 2026 19:53
Base automatically changed from munir/add-session-id-support-telemetry to main April 15, 2026 19:27
Resolve conflicts by combining session instrumentation (session/root/parent
headers and TelemetryInstrumentationSessions) with main's shared runtime
and telemetry worker setup. FFI trace exporter uses GenericTraceExporter alias.
Telemetry integration test uses SharedRuntime. Take telemetry expanded.rs
from main.

Made-with: Cursor
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.

2 participants