Skip to content

Add processor context for hotspot crash tracking#10867

Open
bric3 wants to merge 2 commits intomasterfrom
bdu/processor-context
Open

Add processor context for hotspot crash tracking#10867
bric3 wants to merge 2 commits intomasterfrom
bdu/processor-context

Conversation

@bric3
Copy link
Contributor

@bric3 bric3 commented Mar 17, 2026

What Does This Do

Adds the registry of the processor from the Hotspot crash log, in the experimental field:

Json example Error tracking screenshot
"experimental":{
  "ucontext":{
    "RAX":"0x00007f36ccfbf170",
    "RBX":"0x000000008fd66048",
    "RCX":"0x0000000000000758",
    "RDX":"0x0000000000000008",
    "RSP":"0x00007f35e6253190",
    "RBP":"0x00007f35e6253220",
    "RSI":"0x00007f3639c2ff00",
    "RDI":"0x0000000000000000",
    "R8":"0x00007f37a16e2590",
    "R9":"0x00007f37a16e25a0",
    "R10":"0x00000000000008dd",
    "R11":"0x00007f3744198b70",
    "R12":"0x0000000000000000",
    "R13":"0x00007f35e6254750",
    "R14":"0x00007f3639c2ff00",
    "R15":"0x00007f35e6253320",
    "RIP":"0x00007f37a18bc187",
    "EFLAGS":"0x0000000000010286",
    "CSGSFS":"0x002b000000000033",
    "ERR":"0x0000000000000004",
    "TRAPNO":"0x000000000000000e"
  }
}
image

Motivation

Additional information

ucontext_t is a POSIX struct passed to signal handlers (third argument when using SA_SIGINFO). It captures the complete CPU state at the exact moment the signal was raised — i.e., at the point of crash. The JVM emits this information under the Registers section in the crash log.

Links to different os::print_context implementations

Test script
#!/usr/bin/env zsh
# End-to-end crashtracking test: crashes the JVM via null dereference (SIGSEGV)
# and verifies telemetry is sent to the local Datadog agent.
set -euo pipefail

SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"

_jars=("$SCRIPT_DIR"/dd-java-agent/build/libs/dd-java-agent-*.jar(N))
if [[ ${#_jars[@]} -eq 0 ]]; then
  echo "Agent jar not found — run: ./gradlew :dd-java-agent:shadowJar" >&2
  exit 1
elif [[ ${#_jars[@]} -gt 1 ]]; then
  echo "Multiple agent jars found, expected exactly one:" >&2
  printf '  %s\n' "${_jars[@]}" >&2
  exit 1
fi
AGENT_JAR="${_jars[0]}"
echo "==> Agent: $AGENT_JAR"

WORK_DIR=$(mktemp -d)
echo "==> Workdir: $WORK_DIR"

cat > "$WORK_DIR/NullDeref.java" <<'EOF'
import java.lang.foreign.MemorySegment;
import java.lang.foreign.ValueLayout;
import java.nio.file.Files;
import java.nio.file.Path;

class NullDeref {
  public static void main(String[] args) throws Exception {
    // Wait for agent to write the crash uploader script before crashing
    String scriptPath = System.getProperty("dd.test.crash_script");
    if (scriptPath != null) {
      Path script = Path.of(scriptPath);
      System.out.println("Waiting for agent to write: " + script);
      long deadline = System.nanoTime() + 15_000_000_000L;
      while (!Files.exists(script) && System.nanoTime() < deadline) {
        Thread.sleep(200);
      }
      System.out.println(Files.exists(script) ? "Script ready." : "Timeout — crashing anyway.");
    }
    System.out.println("Dereferencing null address via MemorySegment...");
    // reinterpret(Long.BYTES) bypasses bounds checks, triggering SIGSEGV at address 0
    MemorySegment.ofAddress(0).reinterpret(Long.BYTES).get(ValueLayout.JAVA_LONG, 0);
  }
}
EOF

CRASH_SCRIPT="$WORK_DIR/dd_crash_uploader.sh"

DD_TRACE_AGENT_PORT=8136 \
DD_DOGSTATSD_PORT=8135 \
mise exec java@25 -- java \
  --source 25 \
  --enable-native-access=ALL-UNNAMED \
  -javaagent:"$AGENT_JAR" \
  "-XX:OnError=$CRASH_SCRIPT %p" \
  "-XX:ErrorFile=$WORK_DIR/hs_err_%p.log" \
  -Ddd.test.crash_script="$CRASH_SCRIPT" \
  -Ddd.dogstatsd.start-delay=0 \
  -Ddd.service=crashtest-local \
  -Ddd.crashtracking.errors-intake.enabled=true \
  -Ddd.env=local \
  -Ddd.trace.enabled=false \
  "$WORK_DIR/NullDeref.java" || true

echo ""
echo "==> Files in $WORK_DIR:"
ls -la "$WORK_DIR/" 2>/dev/null || echo "(empty)"

@pr-commenter
Copy link

pr-commenter bot commented Mar 17, 2026

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master bdu/processor-context
git_commit_date 1773914838 1773916159
git_commit_sha f452dff 9b3b0aa
release_version 1.61.0-SNAPSHOT~f452dffb47 1.61.0-SNAPSHOT~9b3b0aaa0c
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1773917861 1773917861
ci_job_id 1520777450 1520777450
ci_pipeline_id 103453666 103453666
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-0-xu6p3rpc 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-0-xu6p3rpc 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
module Agent Agent
parent None None

Summary

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

Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.61.0-SNAPSHOT~9b3b0aaa0c, baseline=1.61.0-SNAPSHOT~f452dffb47

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.057 s) : 0, 1057464
Total [baseline] (8.837 s) : 0, 8837379
Agent [candidate] (1.056 s) : 0, 1055837
Total [candidate] (8.852 s) : 0, 8851542
section iast
Agent [baseline] (1.226 s) : 0, 1226367
Total [baseline] (9.537 s) : 0, 9537276
Agent [candidate] (1.238 s) : 0, 1237556
Total [candidate] (9.556 s) : 0, 9555769
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.057 s -
Agent iast 1.226 s 168.903 ms (16.0%)
Total tracing 8.837 s -
Total iast 9.537 s 699.896 ms (7.9%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.056 s -
Agent iast 1.238 s 181.718 ms (17.2%)
Total tracing 8.852 s -
Total iast 9.556 s 704.226 ms (8.0%)
gantt
    title insecure-bank - break down per module: candidate=1.61.0-SNAPSHOT~9b3b0aaa0c, baseline=1.61.0-SNAPSHOT~f452dffb47

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.19 ms) : 0, 1190
crashtracking [candidate] (1.18 ms) : 0, 1180
BytebuddyAgent [baseline] (630.007 ms) : 0, 630007
BytebuddyAgent [candidate] (628.493 ms) : 0, 628493
AgentMeter [baseline] (29.098 ms) : 0, 29098
AgentMeter [candidate] (29.196 ms) : 0, 29196
GlobalTracer [baseline] (257.172 ms) : 0, 257172
GlobalTracer [candidate] (256.958 ms) : 0, 256958
AppSec [baseline] (31.641 ms) : 0, 31641
AppSec [candidate] (31.765 ms) : 0, 31765
Debugger [baseline] (59.525 ms) : 0, 59525
Debugger [candidate] (59.257 ms) : 0, 59257
Remote Config [baseline] (582.562 µs) : 0, 583
Remote Config [candidate] (580.656 µs) : 0, 581
Telemetry [baseline] (8.722 ms) : 0, 8722
Telemetry [candidate] (8.858 ms) : 0, 8858
Flare Poller [baseline] (3.521 ms) : 0, 3521
Flare Poller [candidate] (3.531 ms) : 0, 3531
section iast
crashtracking [baseline] (1.213 ms) : 0, 1213
crashtracking [candidate] (1.198 ms) : 0, 1198
BytebuddyAgent [baseline] (796.186 ms) : 0, 796186
BytebuddyAgent [candidate] (804.207 ms) : 0, 804207
AgentMeter [baseline] (11.302 ms) : 0, 11302
AgentMeter [candidate] (11.619 ms) : 0, 11619
GlobalTracer [baseline] (247.016 ms) : 0, 247016
GlobalTracer [candidate] (248.715 ms) : 0, 248715
IAST [baseline] (25.245 ms) : 0, 25245
IAST [candidate] (25.549 ms) : 0, 25549
AppSec [baseline] (26.419 ms) : 0, 26419
AppSec [candidate] (26.793 ms) : 0, 26793
Debugger [baseline] (68.569 ms) : 0, 68569
Debugger [candidate] (69.582 ms) : 0, 69582
Remote Config [baseline] (522.723 µs) : 0, 523
Remote Config [candidate] (529.384 µs) : 0, 529
Telemetry [baseline] (10.254 ms) : 0, 10254
Telemetry [candidate] (9.697 ms) : 0, 9697
Flare Poller [baseline] (3.658 ms) : 0, 3658
Flare Poller [candidate] (3.459 ms) : 0, 3459
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.61.0-SNAPSHOT~9b3b0aaa0c, baseline=1.61.0-SNAPSHOT~f452dffb47

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.058 s) : 0, 1057696
Total [baseline] (11.134 s) : 0, 11134246
Agent [candidate] (1.058 s) : 0, 1057555
Total [candidate] (11.136 s) : 0, 11135836
section appsec
Agent [baseline] (1.246 s) : 0, 1245868
Total [baseline] (11.14 s) : 0, 11139687
Agent [candidate] (1.245 s) : 0, 1244656
Total [candidate] (11.117 s) : 0, 11117377
section iast
Agent [baseline] (1.237 s) : 0, 1236763
Total [baseline] (11.294 s) : 0, 11294123
Agent [candidate] (1.228 s) : 0, 1227507
Total [candidate] (11.313 s) : 0, 11313084
section profiling
Agent [baseline] (1.184 s) : 0, 1183901
Total [baseline] (11.057 s) : 0, 11056811
Agent [candidate] (1.179 s) : 0, 1178958
Total [candidate] (10.93 s) : 0, 10929773
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.058 s -
Agent appsec 1.246 s 188.172 ms (17.8%)
Agent iast 1.237 s 179.066 ms (16.9%)
Agent profiling 1.184 s 126.205 ms (11.9%)
Total tracing 11.134 s -
Total appsec 11.14 s 5.441 ms (0.0%)
Total iast 11.294 s 159.876 ms (1.4%)
Total profiling 11.057 s -77.436 ms (-0.7%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.058 s -
Agent appsec 1.245 s 187.101 ms (17.7%)
Agent iast 1.228 s 169.951 ms (16.1%)
Agent profiling 1.179 s 121.403 ms (11.5%)
Total tracing 11.136 s -
Total appsec 11.117 s -18.459 ms (-0.2%)
Total iast 11.313 s 177.248 ms (1.6%)
Total profiling 10.93 s -206.063 ms (-1.9%)
gantt
    title petclinic - break down per module: candidate=1.61.0-SNAPSHOT~9b3b0aaa0c, baseline=1.61.0-SNAPSHOT~f452dffb47

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.192 ms) : 0, 1192
crashtracking [candidate] (1.193 ms) : 0, 1193
BytebuddyAgent [baseline] (628.884 ms) : 0, 628884
BytebuddyAgent [candidate] (629.494 ms) : 0, 629494
AgentMeter [baseline] (29.291 ms) : 0, 29291
AgentMeter [candidate] (29.231 ms) : 0, 29231
GlobalTracer [baseline] (257.379 ms) : 0, 257379
GlobalTracer [candidate] (257.47 ms) : 0, 257470
AppSec [baseline] (31.764 ms) : 0, 31764
AppSec [candidate] (31.657 ms) : 0, 31657
Debugger [baseline] (60.307 ms) : 0, 60307
Debugger [candidate] (60.398 ms) : 0, 60398
Remote Config [baseline] (583.14 µs) : 0, 583
Remote Config [candidate] (601.875 µs) : 0, 602
Telemetry [baseline] (8.752 ms) : 0, 8752
Telemetry [candidate] (8.045 ms) : 0, 8045
Flare Poller [baseline] (3.562 ms) : 0, 3562
Flare Poller [candidate] (3.51 ms) : 0, 3510
section appsec
crashtracking [baseline] (1.227 ms) : 0, 1227
crashtracking [candidate] (1.182 ms) : 0, 1182
BytebuddyAgent [baseline] (657.708 ms) : 0, 657708
BytebuddyAgent [candidate] (657.592 ms) : 0, 657592
AgentMeter [baseline] (12.018 ms) : 0, 12018
AgentMeter [candidate] (11.989 ms) : 0, 11989
GlobalTracer [baseline] (257.841 ms) : 0, 257841
GlobalTracer [candidate] (257.715 ms) : 0, 257715
IAST [baseline] (24.165 ms) : 0, 24165
IAST [candidate] (24.097 ms) : 0, 24097
AppSec [baseline] (177.659 ms) : 0, 177659
AppSec [candidate] (177.259 ms) : 0, 177259
Debugger [baseline] (66.456 ms) : 0, 66456
Debugger [candidate] (66.147 ms) : 0, 66147
Remote Config [baseline] (618.16 µs) : 0, 618
Remote Config [candidate] (615.585 µs) : 0, 616
Telemetry [baseline] (8.339 ms) : 0, 8339
Telemetry [candidate] (8.305 ms) : 0, 8305
Flare Poller [baseline] (3.639 ms) : 0, 3639
Flare Poller [candidate] (3.599 ms) : 0, 3599
section iast
crashtracking [baseline] (1.194 ms) : 0, 1194
crashtracking [candidate] (1.187 ms) : 0, 1187
BytebuddyAgent [baseline] (801.957 ms) : 0, 801957
BytebuddyAgent [candidate] (796.651 ms) : 0, 796651
AgentMeter [baseline] (11.404 ms) : 0, 11404
AgentMeter [candidate] (11.315 ms) : 0, 11315
GlobalTracer [baseline] (249.453 ms) : 0, 249453
GlobalTracer [candidate] (247.297 ms) : 0, 247297
IAST [baseline] (25.598 ms) : 0, 25598
IAST [candidate] (25.252 ms) : 0, 25252
AppSec [baseline] (27.751 ms) : 0, 27751
AppSec [candidate] (26.467 ms) : 0, 26467
Debugger [baseline] (70.222 ms) : 0, 70222
Debugger [candidate] (70.352 ms) : 0, 70352
Remote Config [baseline] (534.633 µs) : 0, 535
Remote Config [candidate] (531.053 µs) : 0, 531
Telemetry [baseline] (9.251 ms) : 0, 9251
Telemetry [candidate] (9.158 ms) : 0, 9158
Flare Poller [baseline] (3.358 ms) : 0, 3358
Flare Poller [candidate] (3.321 ms) : 0, 3321
section profiling
crashtracking [baseline] (1.174 ms) : 0, 1174
crashtracking [candidate] (1.171 ms) : 0, 1171
BytebuddyAgent [baseline] (682.747 ms) : 0, 682747
BytebuddyAgent [candidate] (681.197 ms) : 0, 681197
AgentMeter [baseline] (8.675 ms) : 0, 8675
AgentMeter [candidate] (8.662 ms) : 0, 8662
GlobalTracer [baseline] (215.896 ms) : 0, 215896
GlobalTracer [candidate] (214.709 ms) : 0, 214709
AppSec [baseline] (32.279 ms) : 0, 32279
AppSec [candidate] (32.012 ms) : 0, 32012
Debugger [baseline] (63.905 ms) : 0, 63905
Debugger [candidate] (62.464 ms) : 0, 62464
Remote Config [baseline] (573.933 µs) : 0, 574
Remote Config [candidate] (573.077 µs) : 0, 573
Telemetry [baseline] (10.042 ms) : 0, 10042
Telemetry [candidate] (10.822 ms) : 0, 10822
Flare Poller [baseline] (3.538 ms) : 0, 3538
Flare Poller [candidate] (3.475 ms) : 0, 3475
ProfilingAgent [baseline] (94.31 ms) : 0, 94310
ProfilingAgent [candidate] (93.266 ms) : 0, 93266
Profiling [baseline] (94.884 ms) : 0, 94884
Profiling [candidate] (93.812 ms) : 0, 93812
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master bdu/processor-context
git_commit_date 1773914838 1773916159
git_commit_sha f452dff 9b3b0aa
release_version 1.61.0-SNAPSHOT~f452dffb47 1.61.0-SNAPSHOT~9b3b0aaa0c
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1773918339 1773918339
ci_job_id 1520777451 1520777451
ci_pipeline_id 103453666 103453666
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-0-pkm0gerp 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-0-pkm0gerp 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

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

scenario Δ mean agg_http_req_duration_p50 Δ mean agg_http_req_duration_p95 Δ mean throughput candidate mean agg_http_req_duration_p50 candidate mean agg_http_req_duration_p95 candidate mean throughput baseline mean agg_http_req_duration_p50 baseline mean agg_http_req_duration_p95 baseline mean throughput
scenario:load:insecure-bank:profiling:high_load better
[-195.606µs; -40.302µs] or [-11.049%; -2.277%]
unstable
[-1485.269µs; -486.371µs] or [-26.625%; -8.719%]
unstable
[-15.722op/s; +535.659op/s] or [-0.788%; +26.845%]
1.652ms 4.593ms 2255.344op/s 1.770ms 5.578ms 1995.375op/s
scenario:load:insecure-bank:iast_GLOBAL:high_load better
[-235.064µs; -74.986µs] or [-7.951%; -2.536%]
unsure
[-746.365µs; -116.557µs] or [-8.877%; -1.386%]
unstable
[-76.279op/s; +204.717op/s] or [-6.248%; +16.769%]
2.801ms 7.976ms 1285.031op/s 2.956ms 8.407ms 1220.812op/s
scenario:load:insecure-bank:iast_FULL:high_load better
[-721.742µs; -382.738µs] or [-13.067%; -6.929%]
better
[-1.630ms; -0.892ms] or [-12.387%; -6.777%]
unstable
[-5.897op/s; +164.335op/s] or [-0.793%; +22.108%]
4.971ms 11.899ms 822.562op/s 5.523ms 13.160ms 743.344op/s
scenario:load:petclinic:appsec:high_load worse
[+0.680ms; +2.064ms] or [+3.672%; +11.140%]
unsure
[+0.403ms; +2.070ms] or [+1.336%; +6.867%]
unstable
[-39.314op/s; +15.627op/s] or [-15.939%; +6.335%]
19.900ms 31.386ms 234.812op/s 18.528ms 30.150ms 246.656op/s
scenario:load:petclinic:tracing:high_load worse
[+1.088ms; +1.772ms] or [+6.226%; +10.145%]
worse
[+0.916ms; +1.996ms] or [+3.155%; +6.880%]
unstable
[-44.329op/s; +12.892op/s] or [-17.050%; +4.958%]
18.898ms 30.473ms 244.281op/s 17.468ms 29.018ms 260.000op/s
scenario:load:petclinic:no_agent:high_load better
[-2.008ms; -0.431ms] or [-10.676%; -2.290%]
unstable
[-3.052ms; +0.502ms] or [-9.908%; +1.631%]
unstable
[-14.040op/s; +46.790op/s] or [-5.764%; +19.211%]
17.594ms 29.524ms 259.938op/s 18.814ms 30.799ms 243.562op/s
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.61.0-SNAPSHOT~9b3b0aaa0c, baseline=1.61.0-SNAPSHOT~f452dffb47
    dateFormat X
    axisFormat %s
section baseline
no_agent (19.162 ms) : 18970, 19355
.   : milestone, 19162,
appsec (18.922 ms) : 18728, 19117
.   : milestone, 18922,
code_origins (17.944 ms) : 17763, 18124
.   : milestone, 17944,
iast (17.922 ms) : 17740, 18103
.   : milestone, 17922,
profiling (18.7 ms) : 18513, 18886
.   : milestone, 18700,
tracing (17.945 ms) : 17764, 18125
.   : milestone, 17945,
section candidate
no_agent (17.954 ms) : 17768, 18141
.   : milestone, 17954,
appsec (19.887 ms) : 19682, 20092
.   : milestone, 19887,
code_origins (18.598 ms) : 18409, 18787
.   : milestone, 18598,
iast (17.8 ms) : 17622, 17977
.   : milestone, 17800,
profiling (18.731 ms) : 18547, 18915
.   : milestone, 18731,
tracing (19.109 ms) : 18916, 19302
.   : milestone, 19109,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 19.162 ms [18.97 ms, 19.355 ms] -
appsec 18.922 ms [18.728 ms, 19.117 ms] -239.923 µs (-1.3%)
code_origins 17.944 ms [17.763 ms, 18.124 ms] -1.219 ms (-6.4%)
iast 17.922 ms [17.74 ms, 18.103 ms] -1.241 ms (-6.5%)
profiling 18.7 ms [18.513 ms, 18.886 ms] -462.605 µs (-2.4%)
tracing 17.945 ms [17.764 ms, 18.125 ms] -1.218 ms (-6.4%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 17.954 ms [17.768 ms, 18.141 ms] -
appsec 19.887 ms [19.682 ms, 20.092 ms] 1.932 ms (10.8%)
code_origins 18.598 ms [18.409 ms, 18.787 ms] 643.67 µs (3.6%)
iast 17.8 ms [17.622 ms, 17.977 ms] -154.935 µs (-0.9%)
profiling 18.731 ms [18.547 ms, 18.915 ms] 776.37 µs (4.3%)
tracing 19.109 ms [18.916 ms, 19.302 ms] 1.155 ms (6.4%)
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.61.0-SNAPSHOT~9b3b0aaa0c, baseline=1.61.0-SNAPSHOT~f452dffb47
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.168 ms) : 1157, 1179
.   : milestone, 1168,
iast (3.189 ms) : 3145, 3232
.   : milestone, 3189,
iast_FULL (6.226 ms) : 6162, 6290
.   : milestone, 6226,
iast_GLOBAL (3.761 ms) : 3700, 3822
.   : milestone, 3761,
profiling (2.271 ms) : 2247, 2296
.   : milestone, 2271,
tracing (1.825 ms) : 1810, 1840
.   : milestone, 1825,
section candidate
no_agent (1.181 ms) : 1170, 1192
.   : milestone, 1181,
iast (3.252 ms) : 3208, 3296
.   : milestone, 3252,
iast_FULL (5.618 ms) : 5563, 5674
.   : milestone, 5618,
iast_GLOBAL (3.569 ms) : 3521, 3618
.   : milestone, 3569,
profiling (2.001 ms) : 1984, 2018
.   : milestone, 2001,
tracing (1.782 ms) : 1768, 1797
.   : milestone, 1782,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.168 ms [1.157 ms, 1.179 ms] -
iast 3.189 ms [3.145 ms, 3.232 ms] 2.021 ms (173.0%)
iast_FULL 6.226 ms [6.162 ms, 6.29 ms] 5.058 ms (433.0%)
iast_GLOBAL 3.761 ms [3.7 ms, 3.822 ms] 2.593 ms (221.9%)
profiling 2.271 ms [2.247 ms, 2.296 ms] 1.103 ms (94.5%)
tracing 1.825 ms [1.81 ms, 1.84 ms] 657.167 µs (56.3%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.181 ms [1.17 ms, 1.192 ms] -
iast 3.252 ms [3.208 ms, 3.296 ms] 2.071 ms (175.4%)
iast_FULL 5.618 ms [5.563 ms, 5.674 ms] 4.437 ms (375.7%)
iast_GLOBAL 3.569 ms [3.521 ms, 3.618 ms] 2.388 ms (202.2%)
profiling 2.001 ms [1.984 ms, 2.018 ms] 819.858 µs (69.4%)
tracing 1.782 ms [1.768 ms, 1.797 ms] 601.367 µs (50.9%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master bdu/processor-context
git_commit_date 1773914838 1773916159
git_commit_sha f452dff 9b3b0aa
release_version 1.61.0-SNAPSHOT~f452dffb47 1.61.0-SNAPSHOT~9b3b0aaa0c
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1773918149 1773918149
ci_job_id 1520777452 1520777452
ci_pipeline_id 103453666 103453666
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-0-xv5o0ohx 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-0-xv5o0ohx 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

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

Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.61.0-SNAPSHOT~9b3b0aaa0c, baseline=1.61.0-SNAPSHOT~f452dffb47
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.472 ms) : 1461, 1483
.   : milestone, 1472,
appsec (2.571 ms) : 2514, 2629
.   : milestone, 2571,
iast (2.254 ms) : 2185, 2323
.   : milestone, 2254,
iast_GLOBAL (2.306 ms) : 2237, 2376
.   : milestone, 2306,
profiling (2.09 ms) : 2035, 2145
.   : milestone, 2090,
tracing (2.053 ms) : 2000, 2107
.   : milestone, 2053,
section candidate
no_agent (1.472 ms) : 1460, 1484
.   : milestone, 1472,
appsec (2.511 ms) : 2457, 2566
.   : milestone, 2511,
iast (2.257 ms) : 2187, 2327
.   : milestone, 2257,
iast_GLOBAL (2.296 ms) : 2226, 2365
.   : milestone, 2296,
profiling (2.085 ms) : 2030, 2140
.   : milestone, 2085,
tracing (2.052 ms) : 1998, 2105
.   : milestone, 2052,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.472 ms [1.461 ms, 1.483 ms] -
appsec 2.571 ms [2.514 ms, 2.629 ms] 1.099 ms (74.7%)
iast 2.254 ms [2.185 ms, 2.323 ms] 782.152 µs (53.1%)
iast_GLOBAL 2.306 ms [2.237 ms, 2.376 ms] 834.31 µs (56.7%)
profiling 2.09 ms [2.035 ms, 2.145 ms] 617.596 µs (42.0%)
tracing 2.053 ms [2.0 ms, 2.107 ms] 581.395 µs (39.5%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.472 ms [1.46 ms, 1.484 ms] -
appsec 2.511 ms [2.457 ms, 2.566 ms] 1.039 ms (70.6%)
iast 2.257 ms [2.187 ms, 2.327 ms] 785.043 µs (53.3%)
iast_GLOBAL 2.296 ms [2.226 ms, 2.365 ms] 823.619 µs (56.0%)
profiling 2.085 ms [2.03 ms, 2.14 ms] 612.832 µs (41.6%)
tracing 2.052 ms [1.998 ms, 2.105 ms] 579.616 µs (39.4%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.61.0-SNAPSHOT~9b3b0aaa0c, baseline=1.61.0-SNAPSHOT~f452dffb47
    dateFormat X
    axisFormat %s
section baseline
no_agent (15.017 s) : 15017000, 15017000
.   : milestone, 15017000,
appsec (14.905 s) : 14905000, 14905000
.   : milestone, 14905000,
iast (17.987 s) : 17987000, 17987000
.   : milestone, 17987000,
iast_GLOBAL (17.908 s) : 17908000, 17908000
.   : milestone, 17908000,
profiling (15.332 s) : 15332000, 15332000
.   : milestone, 15332000,
tracing (14.898 s) : 14898000, 14898000
.   : milestone, 14898000,
section candidate
no_agent (15.003 s) : 15003000, 15003000
.   : milestone, 15003000,
appsec (14.564 s) : 14564000, 14564000
.   : milestone, 14564000,
iast (18.319 s) : 18319000, 18319000
.   : milestone, 18319000,
iast_GLOBAL (17.748 s) : 17748000, 17748000
.   : milestone, 17748000,
profiling (14.927 s) : 14927000, 14927000
.   : milestone, 14927000,
tracing (14.818 s) : 14818000, 14818000
.   : milestone, 14818000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.017 s [15.017 s, 15.017 s] -
appsec 14.905 s [14.905 s, 14.905 s] -112.0 ms (-0.7%)
iast 17.987 s [17.987 s, 17.987 s] 2.97 s (19.8%)
iast_GLOBAL 17.908 s [17.908 s, 17.908 s] 2.891 s (19.3%)
profiling 15.332 s [15.332 s, 15.332 s] 315.0 ms (2.1%)
tracing 14.898 s [14.898 s, 14.898 s] -119.0 ms (-0.8%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.003 s [15.003 s, 15.003 s] -
appsec 14.564 s [14.564 s, 14.564 s] -439.0 ms (-2.9%)
iast 18.319 s [18.319 s, 18.319 s] 3.316 s (22.1%)
iast_GLOBAL 17.748 s [17.748 s, 17.748 s] 2.745 s (18.3%)
profiling 14.927 s [14.927 s, 14.927 s] -76.0 ms (-0.5%)
tracing 14.818 s [14.818 s, 14.818 s] -185.0 ms (-1.2%)

@bric3 bric3 force-pushed the bdu/processor-context branch from f964abb to 87823ae Compare March 17, 2026 12:48
@bric3 bric3 marked this pull request as ready for review March 18, 2026 16:14
@bric3 bric3 requested a review from a team as a code owner March 18, 2026 16:14
@github-actions
Copy link
Contributor

github-actions bot commented Mar 18, 2026

Hi! 👋 Thanks for your pull request! 🎉

To help us review it, please make sure to:

  • Add at least one type, and one component or instrumentation label to the pull request

If you need help, please check our contributing guidelines.

@bric3 bric3 force-pushed the bdu/processor-context branch from 8c8bf53 to 74c1391 Compare March 19, 2026 09:07
@bric3 bric3 added type: enhancement Enhancements and improvements comp: crash tracking Crash Tracking labels Mar 19, 2026
@bric3 bric3 force-pushed the bdu/processor-context branch from 74c1391 to 9b3b0aa Compare March 19, 2026 10:29
@bric3 bric3 requested a review from amarziali March 19, 2026 15:48
Copy link
Contributor

@amarziali amarziali left a comment

Choose a reason for hiding this comment

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

nice work!

* and subsequent sections such as {@code siginfo} and registers will be silently skipped. The
* resulting {@link datadog.crashtracking.dto.CrashLog} will be marked {@code incomplete}.
*/
public final class HotspotCrashLogParser {
Copy link
Contributor

Choose a reason for hiding this comment

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

J9JavacoreParser should also be also maintained here (if applicable) - but it can be done in a follow up PR

No events

Dll operation events (5 events):
Event: 0.013 Loaded shared library /Users/brice.dutheil/.local/share/mise/installs/java/25.0.2/lib/libjava.dylib
Copy link
Contributor

Choose a reason for hiding this comment

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

Idnk if you want to strip those paths (or not)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp: crash tracking Crash Tracking type: enhancement Enhancements and improvements

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants