Skip to content

Use resolved address for peer.hostname when available without hitting the cache #8915

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Jun 4, 2025

Conversation

amarziali
Copy link
Contributor

What Does This Do

It may happen to have different hostnames pointing to the same IP. In this case, our hostname cache will hit the first resolved hostname giving a bad result.
In the case we have an already resolved hostname, this PR will avoid using the cache by using introspection to gather the already known hostname on the internal holder.

Note: as an additional mechanisms, if this is not enough, we can also compare the host provided by http.url with the one extracted from the inet address and force a resolution if not matching. This is not implemented here

Motivation

Additional Notes

Contributor Checklist

Jira ticket: [PROJ-IDENT]

@amarziali amarziali requested review from a team as code owners June 3, 2025 16:04
@amarziali amarziali requested a review from ygree June 3, 2025 16:04
@amarziali amarziali added type: bug Bug report and fix comp: core Tracer core labels Jun 3, 2025
@amarziali amarziali requested a review from mcculls June 3, 2025 16:04
@amarziali amarziali force-pushed the andrea.marziali/dnscache branch from fe23f51 to 2b66505 Compare June 3, 2025 16:08
@pr-commenter
Copy link

pr-commenter bot commented Jun 3, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master andrea.marziali/dnscache
git_commit_date 1746789389 1749020291
git_commit_sha ad6d5fe fef3bcd
release_version 1.50.0-SNAPSHOT~ad6d5fef42 1.50.0-SNAPSHOT~fef3bcd449
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1749022865 1749022865
ci_job_id 966800773 966800773
ci_pipeline_id 66893783 66893783
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-xizkxfyi-project-304-concurrent-0-wwxutoqr 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-xizkxfyi-project-304-concurrent-0-wwxutoqr 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
module Agent Agent
parent None None
variant iast iast

Summary

Found 4 performance improvements and 2 performance regressions! Performance is the same for 52 metrics, 13 unstable metrics.

scenario Δ mean execution_time candidate mean execution_time baseline mean execution_time
scenario:startup:insecure-bank:iast_TELEMETRY_OFF:AppSec better
[-9.248ms; -5.151ms] or [-16.334%; -9.098%]
49.417ms 56.617ms
scenario:startup:insecure-bank:tracing:Remote Config worse
[+34.020µs; +103.214µs] or [+4.901%; +14.868%]
762.806µs 694.189µs
scenario:startup:petclinic:profiling:ProfilingAgent better
[-6.821ms; -3.125ms] or [-6.277%; -2.875%]
103.689ms 108.662ms
scenario:startup:petclinic:profiling:GlobalTracer better
[-22.747ms; -14.641ms] or [-5.969%; -3.842%]
362.382ms 381.076ms
scenario:startup:petclinic:profiling:AppSec worse
[+5.540ms; +9.392ms] or [+10.192%; +17.280%]
61.821ms 54.354ms
scenario:startup:petclinic:profiling:Profiling better
[-6.822ms; -3.125ms] or [-6.277%; -2.875%]
103.714ms 108.687ms
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.50.0-SNAPSHOT~fef3bcd449, baseline=1.50.0-SNAPSHOT~ad6d5fef42

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.022 s) : 0, 1022038
Total [baseline] (11.228 s) : 0, 11227757
Agent [candidate] (1.032 s) : 0, 1031750
Total [candidate] (11.211 s) : 0, 11210978
section appsec
Agent [baseline] (1.159 s) : 0, 1159361
Total [baseline] (11.245 s) : 0, 11245120
Agent [candidate] (1.163 s) : 0, 1162501
Total [candidate] (11.27 s) : 0, 11269898
section iast
Agent [baseline] (1.157 s) : 0, 1156807
Total [baseline] (11.373 s) : 0, 11373023
Agent [candidate] (1.174 s) : 0, 1174092
Total [candidate] (11.371 s) : 0, 11370740
section profiling
Agent [baseline] (1.284 s) : 0, 1283710
Total [baseline] (11.386 s) : 0, 11386030
Agent [candidate] (1.274 s) : 0, 1274173
Total [candidate] (11.51 s) : 0, 11510308
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.022 s -
Agent appsec 1.159 s 137.323 ms (13.4%)
Agent iast 1.157 s 134.769 ms (13.2%)
Agent profiling 1.284 s 261.672 ms (25.6%)
Total tracing 11.228 s -
Total appsec 11.245 s 17.362 ms (0.2%)
Total iast 11.373 s 145.265 ms (1.3%)
Total profiling 11.386 s 158.273 ms (1.4%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.032 s -
Agent appsec 1.163 s 130.75 ms (12.7%)
Agent iast 1.174 s 142.341 ms (13.8%)
Agent profiling 1.274 s 242.423 ms (23.5%)
Total tracing 11.211 s -
Total appsec 11.27 s 58.921 ms (0.5%)
Total iast 11.371 s 159.762 ms (1.4%)
Total profiling 11.51 s 299.331 ms (2.7%)
gantt
    title petclinic - break down per module: candidate=1.50.0-SNAPSHOT~fef3bcd449, baseline=1.50.0-SNAPSHOT~ad6d5fef42

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (682.035 ms) : 0, 682035
BytebuddyAgent [candidate] (687.908 ms) : 0, 687908
GlobalTracer [baseline] (239.873 ms) : 0, 239873
GlobalTracer [candidate] (241.963 ms) : 0, 241963
AppSec [baseline] (54.622 ms) : 0, 54622
AppSec [candidate] (57.41 ms) : 0, 57410
Debugger [baseline] (12.177 ms) : 0, 12177
Debugger [candidate] (6.244 ms) : 0, 6244
Remote Config [baseline] (694.534 µs) : 0, 695
Remote Config [candidate] (761.146 µs) : 0, 761
Telemetry [baseline] (9.006 ms) : 0, 9006
Telemetry [candidate] (13.608 ms) : 0, 13608
section appsec
BytebuddyAgent [baseline] (699.362 ms) : 0, 699362
BytebuddyAgent [candidate] (699.869 ms) : 0, 699869
GlobalTracer [baseline] (236.368 ms) : 0, 236368
GlobalTracer [candidate] (237.531 ms) : 0, 237531
AppSec [baseline] (175.266 ms) : 0, 175266
AppSec [candidate] (176.612 ms) : 0, 176612
Debugger [baseline] (5.938 ms) : 0, 5938
Debugger [candidate] (5.998 ms) : 0, 5998
Remote Config [baseline] (628.662 µs) : 0, 629
Remote Config [candidate] (638.397 µs) : 0, 638
Telemetry [baseline] (7.377 ms) : 0, 7377
Telemetry [candidate] (7.347 ms) : 0, 7347
IAST [baseline] (21.775 ms) : 0, 21775
IAST [candidate] (21.833 ms) : 0, 21833
section iast
BytebuddyAgent [baseline] (807.728 ms) : 0, 807728
BytebuddyAgent [candidate] (820.031 ms) : 0, 820031
GlobalTracer [baseline] (231.559 ms) : 0, 231559
GlobalTracer [candidate] (234.812 ms) : 0, 234812
AppSec [baseline] (49.283 ms) : 0, 49283
AppSec [candidate] (52.905 ms) : 0, 52905
Debugger [baseline] (6.009 ms) : 0, 6009
Debugger [candidate] (5.975 ms) : 0, 5975
Remote Config [baseline] (605.027 µs) : 0, 605
Remote Config [candidate] (604.64 µs) : 0, 605
Telemetry [baseline] (7.907 ms) : 0, 7907
Telemetry [candidate] (7.984 ms) : 0, 7984
IAST [baseline] (30.068 ms) : 0, 30068
IAST [candidate] (27.74 ms) : 0, 27740
section profiling
BytebuddyAgent [baseline] (674.195 ms) : 0, 674195
BytebuddyAgent [candidate] (680.061 ms) : 0, 680061
GlobalTracer [baseline] (381.076 ms) : 0, 381076
GlobalTracer [candidate] (362.382 ms) : 0, 362382
AppSec [baseline] (54.354 ms) : 0, 54354
AppSec [candidate] (61.821 ms) : 0, 61821
Debugger [baseline] (6.122 ms) : 0, 6122
Debugger [candidate] (6.135 ms) : 0, 6135
Remote Config [baseline] (672.648 µs) : 0, 673
Remote Config [candidate] (649.511 µs) : 0, 650
Telemetry [baseline] (8.088 ms) : 0, 8088
Telemetry [candidate] (8.234 ms) : 0, 8234
ProfilingAgent [baseline] (108.662 ms) : 0, 108662
ProfilingAgent [candidate] (103.689 ms) : 0, 103689
Profiling [baseline] (108.687 ms) : 0, 108687
Profiling [candidate] (103.714 ms) : 0, 103714
Loading
Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.50.0-SNAPSHOT~fef3bcd449, baseline=1.50.0-SNAPSHOT~ad6d5fef42

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.023 s) : 0, 1023311
Total [baseline] (8.569 s) : 0, 8569082
Agent [candidate] (1.027 s) : 0, 1027157
Total [candidate] (8.551 s) : 0, 8550514
section iast
Agent [baseline] (1.157 s) : 0, 1156936
Total [baseline] (9.202 s) : 0, 9201684
Agent [candidate] (1.15 s) : 0, 1150160
Total [candidate] (9.192 s) : 0, 9191503
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.154 s) : 0, 1153773
Total [baseline] (9.142 s) : 0, 9142339
Agent [candidate] (1.152 s) : 0, 1151771
Total [candidate] (9.146 s) : 0, 9145832
section iast_TELEMETRY_OFF
Agent [baseline] (1.158 s) : 0, 1158034
Total [baseline] (9.278 s) : 0, 9278103
Agent [candidate] (1.146 s) : 0, 1146149
Total [candidate] (9.291 s) : 0, 9291037
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.023 s -
Agent iast 1.157 s 133.626 ms (13.1%)
Agent iast_HARDCODED_SECRET_DISABLED 1.154 s 130.462 ms (12.7%)
Agent iast_TELEMETRY_OFF 1.158 s 134.724 ms (13.2%)
Total tracing 8.569 s -
Total iast 9.202 s 632.601 ms (7.4%)
Total iast_HARDCODED_SECRET_DISABLED 9.142 s 573.257 ms (6.7%)
Total iast_TELEMETRY_OFF 9.278 s 709.02 ms (8.3%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.027 s -
Agent iast 1.15 s 123.004 ms (12.0%)
Agent iast_HARDCODED_SECRET_DISABLED 1.152 s 124.614 ms (12.1%)
Agent iast_TELEMETRY_OFF 1.146 s 118.992 ms (11.6%)
Total tracing 8.551 s -
Total iast 9.192 s 640.99 ms (7.5%)
Total iast_HARDCODED_SECRET_DISABLED 9.146 s 595.318 ms (7.0%)
Total iast_TELEMETRY_OFF 9.291 s 740.523 ms (8.7%)
gantt
    title insecure-bank - break down per module: candidate=1.50.0-SNAPSHOT~fef3bcd449, baseline=1.50.0-SNAPSHOT~ad6d5fef42

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (683.569 ms) : 0, 683569
BytebuddyAgent [candidate] (684.393 ms) : 0, 684393
GlobalTracer [baseline] (240.333 ms) : 0, 240333
GlobalTracer [candidate] (241.129 ms) : 0, 241129
AppSec [baseline] (54.633 ms) : 0, 54633
AppSec [candidate] (56.511 ms) : 0, 56511
Debugger [baseline] (10.54 ms) : 0, 10540
Debugger [candidate] (6.221 ms) : 0, 6221
Remote Config [baseline] (694.189 µs) : 0, 694
Remote Config [candidate] (762.806 µs) : 0, 763
Telemetry [baseline] (9.911 ms) : 0, 9911
Telemetry [candidate] (14.489 ms) : 0, 14489
section iast
BytebuddyAgent [baseline] (807.322 ms) : 0, 807322
BytebuddyAgent [candidate] (802.517 ms) : 0, 802517
GlobalTracer [baseline] (231.71 ms) : 0, 231710
GlobalTracer [candidate] (230.97 ms) : 0, 230970
IAST [baseline] (30.357 ms) : 0, 30357
IAST [candidate] (26.715 ms) : 0, 26715
AppSec [baseline] (49.308 ms) : 0, 49308
AppSec [candidate] (52.087 ms) : 0, 52087
Debugger [baseline] (6.023 ms) : 0, 6023
Debugger [candidate] (5.872 ms) : 0, 5872
Remote Config [baseline] (602.28 µs) : 0, 602
Remote Config [candidate] (603.205 µs) : 0, 603
Telemetry [baseline] (7.959 ms) : 0, 7959
Telemetry [candidate] (7.857 ms) : 0, 7857
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (806.145 ms) : 0, 806145
BytebuddyAgent [candidate] (802.551 ms) : 0, 802551
GlobalTracer [baseline] (230.602 ms) : 0, 230602
GlobalTracer [candidate] (231.158 ms) : 0, 231158
IAST [baseline] (30.796 ms) : 0, 30796
IAST [candidate] (27.162 ms) : 0, 27162
AppSec [baseline] (48.048 ms) : 0, 48048
AppSec [candidate] (52.869 ms) : 0, 52869
Debugger [baseline] (6.01 ms) : 0, 6010
Debugger [candidate] (6.004 ms) : 0, 6004
Remote Config [baseline] (598.582 µs) : 0, 599
Remote Config [candidate] (592.834 µs) : 0, 593
Telemetry [baseline] (7.899 ms) : 0, 7899
Telemetry [candidate] (7.949 ms) : 0, 7949
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (808.255 ms) : 0, 808255
BytebuddyAgent [candidate] (798.451 ms) : 0, 798451
GlobalTracer [baseline] (231.964 ms) : 0, 231964
GlobalTracer [candidate] (230.959 ms) : 0, 230959
IAST [baseline] (22.859 ms) : 0, 22859
IAST [candidate] (29.418 ms) : 0, 29418
AppSec [baseline] (56.617 ms) : 0, 56617
AppSec [candidate] (49.417 ms) : 0, 49417
Debugger [baseline] (6.035 ms) : 0, 6035
Debugger [candidate] (5.955 ms) : 0, 5955
Remote Config [baseline] (613.885 µs) : 0, 614
Remote Config [candidate] (601.179 µs) : 0, 601
Telemetry [baseline] (7.882 ms) : 0, 7882
Telemetry [candidate] (7.836 ms) : 0, 7836
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
end_time 2025-06-04T07:08:30 2025-06-04T07:22:04
git_branch master andrea.marziali/dnscache
git_commit_date 1746789389 1749020291
git_commit_sha ad6d5fe fef3bcd
release_version 1.50.0-SNAPSHOT~ad6d5fef42 1.50.0-SNAPSHOT~fef3bcd449
start_time 2025-06-04T07:08:16 2025-06-04T07:21:49
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1749022198 1749022198
ci_job_id 966800774 966800774
ci_pipeline_id 66893783 66893783
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-6qnhxxvc-project-304-concurrent-0-nfwbvjb1 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-6qnhxxvc-project-304-concurrent-0-nfwbvjb1 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
thresholds_or_results results results
variant iast iast

Summary

Found 2 performance improvements and 4 performance regressions! Performance is the same for 5 metrics, 19 unstable metrics.

scenario Δ mean http_req_duration Δ mean throughput candidate mean http_req_duration candidate mean throughput baseline mean http_req_duration baseline mean throughput
scenario:load:petclinic:appsec unstable
[+49.513ms; +50.736ms] or [+517.598%; +530.382%]
worse
[-458.123op/s; -410.901op/s] or [-88.761%; -79.612%]
59.690ms 81.617op/s 9.566ms 516.129op/s
scenario:load:petclinic:code_origins unstable
[+74.655ms; +76.957ms] or [+891.594%; +919.086%]
worse
[-551.677op/s; -525.937op/s] or [-93.095%; -88.752%]
84.179ms 53.786op/s 8.373ms 592.593op/s
scenario:load:petclinic:no_agent better
[-949.118µs; -900.123µs] or [-10.798%; -10.240%]
better
[+43.400op/s; +79.840op/s] or [+7.703%; +14.172%]
7.865ms 625.000op/s 8.790ms 563.380op/s
scenario:load:petclinic:profiling unstable
[+41.174ms; +42.270ms] or [+509.955%; +523.524%]
worse
[-528.754op/s; -496.688op/s] or [-86.584%; -81.333%]
49.796ms 97.966op/s 8.074ms 610.687op/s
scenario:load:petclinic:tracing worse
[+12.903ms; +13.081ms] or [+inf%; +inf%]
unstable
[-24212.640op/s; -15023.908op/s] or [-121.063%; -75.120%]
12991844.807ns 381.726op/s 0.000ns 20000.000op/s

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master andrea.marziali/dnscache
git_commit_date 1746789389 1749020291
git_commit_sha ad6d5fe fef3bcd
release_version 1.50.0-SNAPSHOT~ad6d5fef42 1.50.0-SNAPSHOT~fef3bcd449
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1749022429 1749022429
ci_job_id 966800775 966800775
ci_pipeline_id 66893783 66893783
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-xizkxfyi-project-304-concurrent-1-jtz54vr3 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-xizkxfyi-project-304-concurrent-1-jtz54vr3 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
variant appsec appsec

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.50.0-SNAPSHOT~fef3bcd449, baseline=1.50.0-SNAPSHOT~ad6d5fef42
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.475 ms) : 1463, 1486
.   : milestone, 1475,
appsec (2.388 ms) : 2339, 2436
.   : milestone, 2388,
iast (2.179 ms) : 2117, 2240
.   : milestone, 2179,
iast_GLOBAL (2.227 ms) : 2165, 2288
.   : milestone, 2227,
profiling (2.031 ms) : 1981, 2081
.   : milestone, 2031,
tracing (1.996 ms) : 1949, 2043
.   : milestone, 1996,
section candidate
no_agent (1.472 ms) : 1461, 1484
.   : milestone, 1472,
appsec (2.399 ms) : 2350, 2448
.   : milestone, 2399,
iast (2.179 ms) : 2118, 2239
.   : milestone, 2179,
iast_GLOBAL (2.225 ms) : 2163, 2286
.   : milestone, 2225,
profiling (2.038 ms) : 1988, 2088
.   : milestone, 2038,
tracing (1.995 ms) : 1948, 2043
.   : milestone, 1995,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.475 ms [1.463 ms, 1.486 ms] -
appsec 2.388 ms [2.339 ms, 2.436 ms] 913.075 µs (61.9%)
iast 2.179 ms [2.117 ms, 2.24 ms] 703.818 µs (47.7%)
iast_GLOBAL 2.227 ms [2.165 ms, 2.288 ms] 751.847 µs (51.0%)
profiling 2.031 ms [1.981 ms, 2.081 ms] 556.488 µs (37.7%)
tracing 1.996 ms [1.949 ms, 2.043 ms] 521.2 µs (35.3%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.472 ms [1.461 ms, 1.484 ms] -
appsec 2.399 ms [2.35 ms, 2.448 ms] 926.727 µs (63.0%)
iast 2.179 ms [2.118 ms, 2.239 ms] 706.468 µs (48.0%)
iast_GLOBAL 2.225 ms [2.163 ms, 2.286 ms] 752.751 µs (51.1%)
profiling 2.038 ms [1.988 ms, 2.088 ms] 566.111 µs (38.5%)
tracing 1.995 ms [1.948 ms, 2.043 ms] 523.335 µs (35.5%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.50.0-SNAPSHOT~fef3bcd449, baseline=1.50.0-SNAPSHOT~ad6d5fef42
    dateFormat X
    axisFormat %s
section baseline
no_agent (14.86 s) : 14860000, 14860000
.   : milestone, 14860000,
appsec (15.014 s) : 15014000, 15014000
.   : milestone, 15014000,
iast (18.365 s) : 18365000, 18365000
.   : milestone, 18365000,
iast_GLOBAL (17.857 s) : 17857000, 17857000
.   : milestone, 17857000,
profiling (15.322 s) : 15322000, 15322000
.   : milestone, 15322000,
tracing (14.966 s) : 14966000, 14966000
.   : milestone, 14966000,
section candidate
no_agent (15.506 s) : 15506000, 15506000
.   : milestone, 15506000,
appsec (14.517 s) : 14517000, 14517000
.   : milestone, 14517000,
iast (18.909 s) : 18909000, 18909000
.   : milestone, 18909000,
iast_GLOBAL (17.953 s) : 17953000, 17953000
.   : milestone, 17953000,
profiling (14.997 s) : 14997000, 14997000
.   : milestone, 14997000,
tracing (14.875 s) : 14875000, 14875000
.   : milestone, 14875000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.86 s [14.86 s, 14.86 s] -
appsec 15.014 s [15.014 s, 15.014 s] 154.0 ms (1.0%)
iast 18.365 s [18.365 s, 18.365 s] 3.505 s (23.6%)
iast_GLOBAL 17.857 s [17.857 s, 17.857 s] 2.997 s (20.2%)
profiling 15.322 s [15.322 s, 15.322 s] 462.0 ms (3.1%)
tracing 14.966 s [14.966 s, 14.966 s] 106.0 ms (0.7%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.506 s [15.506 s, 15.506 s] -
appsec 14.517 s [14.517 s, 14.517 s] -989.0 ms (-6.4%)
iast 18.909 s [18.909 s, 18.909 s] 3.403 s (21.9%)
iast_GLOBAL 17.953 s [17.953 s, 17.953 s] 2.447 s (15.8%)
profiling 14.997 s [14.997 s, 14.997 s] -509.0 ms (-3.3%)
tracing 14.875 s [14.875 s, 14.875 s] -631.0 ms (-4.1%)

…strap/instrumentation/java/net/HostNameResolver.java

Co-authored-by: Stuart McCulloch <stuart.mcculloch@datadoghq.com>
@amarziali amarziali enabled auto-merge (squash) June 3, 2025 16:50
@amarziali amarziali requested a review from mcculls June 3, 2025 20:53
@amarziali amarziali force-pushed the andrea.marziali/dnscache branch from 302d49e to fef3bcd Compare June 4, 2025 06:58
Comment on lines +49 to +51
} catch (final Throwable ignored) {
}
return null;
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
} catch (final Throwable ignored) {
}
return null;
} catch (final Throwable ignored) {
return null;
}

minor suggestion, so the returns are aligned :)

@amarziali amarziali merged commit 1280fcc into master Jun 4, 2025
506 of 507 checks passed
@amarziali amarziali deleted the andrea.marziali/dnscache branch June 4, 2025 09:07
@github-actions github-actions bot added this to the 1.50.0 milestone Jun 4, 2025
svc-squareup-copybara pushed a commit to cashapp/misk that referenced this pull request Jun 20, 2025
| Package | Type | Package file | Manager | Update | Change |
|---|---|---|---|---|---|
| [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.49.0` -> `1.50.0` |

---

### Release Notes

<details>
<summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary>

###
[`v1.50.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.50.0):
1.50.0

### Deprecation Notice

> \[!NOTE]
> `DD_RUNTIME_ID_ENABLED` has been deprecated and will be removed in
future releases. Please use `DD_RUNTIME_METRICS_RUNTIME_ID_ENABLED`
instead.

### Components

#### Application Security Management (WAF)

- 🐛 Add String length truncation limit to ObjectIntrospector and
update truncation metrics
([#&#8203;8825](DataDog/dd-trace-java#8825) -
[@&#8203;jandro996](https://github.com/jandro996))
- 🐛 Adapt standalone ASM to support API Security
([#&#8203;8804](DataDog/dd-trace-java#8804) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Add appsec.waf.input\_truncated metric
([#&#8203;8791](DataDog/dd-trace-java#8791) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Extended appsec request body collection
([#&#8203;8748](DataDog/dd-trace-java#8748) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Extended appsec request/response headers collection
([#&#8203;8724](DataDog/dd-trace-java#8724) -
[@&#8203;jandro996](https://github.com/jandro996))

#### Build & Tooling

- ✨ Add artifacts to public s3 bucket
([#&#8203;8947](DataDog/dd-trace-java#8947) -
[@&#8203;randomanderson](https://github.com/randomanderson))

#### Continuous Integration Visibility

- ✨ Improve PR information building
([#&#8203;8908](DataDog/dd-trace-java#8908) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Truncate span stack traces when Test Optimization is
enabled
([#&#8203;8903](DataDog/dd-trace-java#8903) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🐛 Ensure auto-detected service name is the same for every process
in the same build
([#&#8203;8902](DataDog/dd-trace-java#8902) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🐛 Use tag as fallback in api requests if no branch is available
([#&#8203;8876](DataDog/dd-trace-java#8876) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Add support for JUnit 5.13-RC1
([#&#8203;8865](DataDog/dd-trace-java#8865),
[#&#8203;8871](DataDog/dd-trace-java#8871) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Implement attempt to fix v3 and v4 and bump capability
version
([#&#8203;8824](DataDog/dd-trace-java#8824) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- 🧹 Align retry logic for all test framework instrumentations
([#&#8203;8803](DataDog/dd-trace-java#8803) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- 🐛 Always build ci workspace without trailing separator
([#&#8203;8788](DataDog/dd-trace-java#8788) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Add commit discrepancies telemetry when building repository
git information
([#&#8203;8763](DataDog/dd-trace-java#8763) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))

#### Data Streams Monitoring

- 💡 Surface process tags in dsm payloads and use them for base hash
calculation
([#&#8203;8836](DataDog/dd-trace-java#8836) -
[@&#8203;amarziali](https://github.com/amarziali))

#### Dynamic Instrumentation

- ✨ Optimized allocations for collection filter functions
([#&#8203;8896](DataDog/dd-trace-java#8896) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 🐛 Fix SymDB upload size check
([#&#8203;8887](DataDog/dd-trace-java#8887) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 🐛 Add support for Set in filter function
([#&#8203;8873](DataDog/dd-trace-java#8873) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 🐛 Add support for isDefined in log template
([#&#8203;8859](DataDog/dd-trace-java#8859) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 🐛 Fix Max captured frames for Exception Replay
([#&#8203;8856](DataDog/dd-trace-java#8856) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 🐛 Remove static inherited fields collection
([#&#8203;8832](DataDog/dd-trace-java#8832) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 💡 Add process tags to dynamic instrumentation intake payload
([#&#8203;8779](DataDog/dd-trace-java#8779) -
[@&#8203;amarziali](https://github.com/amarziali))

#### GraalVM native-image

- ✨ Add support for GraalVM Native GC metrics
([#&#8203;8913](DataDog/dd-trace-java#8913) -
[@&#8203;ygree](https://github.com/ygree))
- ✨ Add JMXFetch support for GraalVM Native
([#&#8203;8569](DataDog/dd-trace-java#8569) -
[@&#8203;ygree](https://github.com/ygree))

#### JMX fetch

- ✨ Add support for GraalVM Native GC metrics
([#&#8203;8913](DataDog/dd-trace-java#8913) -
[@&#8203;ygree](https://github.com/ygree))

#### Library Injection

- ✨ Deny oracle db jvm based tools
([#&#8203;8909](DataDog/dd-trace-java#8909) -
[@&#8203;bric3](https://github.com/bric3))

#### OpenTracing

- 🐛 Fix OT packaging for exception replay
([#&#8203;8912](DataDog/dd-trace-java#8912) -
[@&#8203;jpbempel](https://github.com/jpbempel))

#### Profiling

- ✨ Bump ddprof to 1.27.0
([#&#8203;8893](DataDog/dd-trace-java#8893) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- Properly handle the adaptive sampling interval overflow by
[@&#8203;jbachorik](https://github.com/jbachorik) in
DataDog/java-profiler#213
- Fix [#&#8203;200](DataDog/dd-trace-java#200)
Crash related to aligned\_alloc and free in context by
[@&#8203;yanglong1010](https://github.com/yanglong1010) in
DataDog/java-profiler#208
- Explicitly initialize empty context page by
[@&#8203;jbachorik](https://github.com/jbachorik) in
DataDog/java-profiler#210
- Re-connect crash recursion protection with VM stackwalker by
[@&#8203;jbachorik](https://github.com/jbachorik) in
DataDog/java-profiler#214
- ✨ Enable ZSTD compression for profiling
([#&#8203;8862](DataDog/dd-trace-java#8862) -
[@&#8203;MattAlp](https://github.com/MattAlp))
- ✨ Extend JPS re-implementation to J9 family
([#&#8203;8813](DataDog/dd-trace-java#8813) -
[@&#8203;MattAlp](https://github.com/MattAlp))
- 💡 Collect process tags for profiling upload requests
([#&#8203;8780](DataDog/dd-trace-java#8780) -
[@&#8203;amarziali](https://github.com/amarziali))

#### Telemetry

- 💡 Surface process tags on telemetry payloads
([#&#8203;8837](DataDog/dd-trace-java#8837) -
[@&#8203;amarziali](https://github.com/amarziali))

#### Trace context propagation

- ✨ Migrating all HttpClient Instrumentations to Inject Full
Context
([#&#8203;8826](DataDog/dd-trace-java#8826) -
[@&#8203;mhlidd](https://github.com/mhlidd))
- ✨ Migrating all HttpServer Instrumentations to Extract full
Context
([#&#8203;8820](DataDog/dd-trace-java#8820) -
[@&#8203;mhlidd](https://github.com/mhlidd))
- ✨ Add context API support OTel propagators
([#&#8203;8770](DataDog/dd-trace-java#8770) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))

#### Tracer core

- ✨⚡ Skip JAXB generated classes classloader
([#&#8203;9003](DataDog/dd-trace-java#9003) -
[@&#8203;bric3](https://github.com/bric3))
- ✨ Add DD\_RUNTIME\_METRICS\_RUNTIME\_ID\_ENABLED alias for
runtime id generation
([#&#8203;8981](DataDog/dd-trace-java#8981) -
[@&#8203;amarziali](https://github.com/amarziali))
- 🐛 Use resolved address for peer.hostname when available without
hitting the cache
([#&#8203;8915](DataDog/dd-trace-java#8915) -
[@&#8203;amarziali](https://github.com/amarziali))
- 💡 Surface server name process tag for tomcat
([#&#8203;8894](DataDog/dd-trace-java#8894) -
[@&#8203;amarziali](https://github.com/amarziali))
- 💡 Surface websphere cell and server name on process tags
([#&#8203;8880](DataDog/dd-trace-java#8880) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Added special lightweight pre-main class that skips
installation on incompatible JVMs.
([#&#8203;8855](DataDog/dd-trace-java#8855) -
[@&#8203;AlexeyKuznetsov-DD](https://github.com/AlexeyKuznetsov-DD))
- 💡 Add entrypoint type to process tags
([#&#8203;8839](DataDog/dd-trace-java#8839) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Extend JPS re-implementation to J9 family
([#&#8203;8813](DataDog/dd-trace-java#8813) -
[@&#8203;MattAlp](https://github.com/MattAlp))
- ✨ Notify listeners when the scope top changes after switching
scope stacks
([#&#8203;8797](DataDog/dd-trace-java#8797) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨ Read hsperfdata for Java PIDs if jvmstat is unavailable
([#&#8203;8792](DataDog/dd-trace-java#8792) -
[@&#8203;MattAlp](https://github.com/MattAlp))
- 🐛 Turn JDK socket support on by default
([#&#8203;8752](DataDog/dd-trace-java#8752) -
[@&#8203;sarahchen6](https://github.com/sarahchen6))
- ✨ Simplify context propagation
([#&#8203;8719](DataDog/dd-trace-java#8719) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨ Add JSON parsing support
([#&#8203;8579](DataDog/dd-trace-java#8579) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))

#### Tracer internal logging

- ✨ Fix printing format of span identifiers
([#&#8203;8897](DataDog/dd-trace-java#8897) -
[@&#8203;vandonr](https://github.com/vandonr))

#### Tracer public API

- 💡 Track the source of installation
([#&#8203;8956](DataDog/dd-trace-java#8956) -
[@&#8203;mabdinur](https://github.com/mabdinur))
- ✨ Enforce size limit on application\_monitoring.yaml files
([#&#8203;8789](DataDog/dd-trace-java#8789) -
[@&#8203;mtoffl01](https://github.com/mtoffl01))
- ✨ Enabling baggage cache to support limits and non-ascii
characters
([#&#8203;8713](DataDog/dd-trace-java#8713) -
[@&#8203;mhlidd](https://github.com/mhlidd))

### Instrumentations

#### AWS Lambda instrumentation

- ✨ Pass Lambda Request ID to Extension
([#&#8203;8814](DataDog/dd-trace-java#8814) -
[@&#8203;nhulston](https://github.com/nhulston))

#### Core Java language instrumentation

- ✨ Ensure ClassloadingInstrumentation is always applied even
with `DD_TRACE_ENABLED=false`
([#&#8203;8863](DataDog/dd-trace-java#8863) -
[@&#8203;mcculls](https://github.com/mcculls))

#### Eclipse Vert.x instrumentation

- 🐛 Do not override route with / in vertx instrumentation
([#&#8203;8881](DataDog/dd-trace-java#8881) -
[@&#8203;vandonr](https://github.com/vandonr))

#### IBM Liberty

- 🐛 Fix error mark on http status for IBM liberty
([#&#8203;8822](DataDog/dd-trace-java#8822) -
[@&#8203;amarziali](https://github.com/amarziali))

#### JDBC instrumentation

- 🐛 Do not prepend DBM <> APM trace comment in SQLCommenter if there
is a pg plan hint
([#&#8203;8864](DataDog/dd-trace-java#8864) -
[@&#8203;edengorevoy](https://github.com/edengorevoy))

#### JMS instrumentation

- ✨ Add jms as an extra integration name where there is JMS
involved
([#&#8203;8933](DataDog/dd-trace-java#8933) -
[@&#8203;vandonr](https://github.com/vandonr))

#### Kotlin instrumentation

- ✨ Enable kotlin\_coroutine integration by default
([#&#8203;8848](DataDog/dd-trace-java#8848) -
[@&#8203;mcculls](https://github.com/mcculls))
- 🧹 Rework Kotlin coroutines instrumentation around coroutine
context
([#&#8203;8774](DataDog/dd-trace-java#8774) -
[@&#8203;mcculls](https://github.com/mcculls))

#### OpenTelemetry instrumentation

- 🐛 Support WithSpan inheritContext attribute
([#&#8203;8858](DataDog/dd-trace-java#8858) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Add context API support OTel propagators
([#&#8203;8770](DataDog/dd-trace-java#8770) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))

#### Play Framework instrumentation

- 🐛 Fix the Play Framework's span resource name priority so that the
client JAX-RS 404 cannot override it
([#&#8203;8591](DataDog/dd-trace-java#8591) -
[@&#8203;ygree](https://github.com/ygree))

#### Quarkus Instrumentation

- 🐛 Ignore quarkus jaxrs stubs and cdi wrapper proxies
([#&#8203;8891](DataDog/dd-trace-java#8891) -
[@&#8203;amarziali](https://github.com/amarziali))

#### ServiceTalk

- ✨ Improve ServiceTalk Captured Context API Instrumentation
for v0.42.56+
([#&#8203;8821](DataDog/dd-trace-java#8821) -
[@&#8203;ygree](https://github.com/ygree))

#### Spring instrumentation

- ✨ Supporting Baggage for Instrumentations used in Weblog
Tests
([#&#8203;8773](DataDog/dd-trace-java#8773) -
[@&#8203;mhlidd](https://github.com/mhlidd))

#### WebSocket Instrumentation

- 💡 Trace websocket for spring webflux reactive handlers
([#&#8203;8831](DataDog/dd-trace-java#8831) -
[@&#8203;amarziali](https://github.com/amarziali))
- 💡:test\_tube: WebSocket support for Netty
([#&#8203;8632](DataDog/dd-trace-java#8632) -
[@&#8203;ValentinZakharov](https://github.com/ValentinZakharov))

#### Zio Instrumentation

- 🧹 Cleanup Zio fiber instrumentation to avoid repeated activation
of continuation
([#&#8203;8798](DataDog/dd-trace-java#8798) -
[@&#8203;mcculls](https://github.com/mcculls))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 6pm every weekday,before 2am
every weekday" in timezone Australia/Melbourne, Automerge - At any time
(no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Never, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://github.com/renovatebot/renovate).

GitOrigin-RevId: 9207366cdb6a1bd098082305d354a0a3c4622d7a
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
comp: core Tracer core type: bug Bug report and fix
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants