Skip to content
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

Support IPv6 values for DD_AGENT_HOST and DD_TRACE_AGENT_URL #7984

Merged
merged 5 commits into from
Jan 16, 2025

Conversation

mhlidd
Copy link
Contributor

@mhlidd mhlidd commented Nov 20, 2024

What Does This Do

Handles IPv6 values for DD_AGENT_HOST by removing potential brackets, and adding them back to ipv6 hosts when compiling the value for DD_TRACE_AGENT_URL. This PR is tested through system-tests specific to ipv6 addresses. (IPv6 Test, DD_AGENT_HOST vs DD_TRACE_AGENT_URL priority tests)

Motivation

There have previously been escalation issues with IPv6 addresses used for DD_AGENT_HOST where the lack of brackets in the compiled DD_TRACE_AGENT_URL is missing brackets and leading to errors with calls being made from SharedCommunicationsObjects. This PR fixes these issues but enforcing brackets when necessary.

Additional Notes

Contributor Checklist

Jira ticket: [PROJ-IDENT]

@pr-commenter
Copy link

pr-commenter bot commented Nov 20, 2024

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mhlidd/support_ipv6_host_addresses
git_commit_date 1736952276 1736963305
git_commit_sha 0b1e6ff 6e11420
release_version 1.46.0-SNAPSHOT~0b1e6ff859 1.46.0-SNAPSHOT~6e11420939
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1736965721 1736965721
ci_job_id 767792940 767792940
ci_pipeline_id 53104456 53104456
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
module Agent Agent
parent None None
variant iast iast

Summary

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

Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.46.0-SNAPSHOT~6e11420939, baseline=1.46.0-SNAPSHOT~0b1e6ff859

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.06 s) : 0, 1059962
Total [baseline] (10.452 s) : 0, 10452062
Agent [candidate] (1.056 s) : 0, 1056065
Total [candidate] (10.485 s) : 0, 10485145
section appsec
Agent [baseline] (1.197 s) : 0, 1196911
Total [baseline] (10.731 s) : 0, 10730507
Agent [candidate] (1.197 s) : 0, 1196533
Total [candidate] (10.75 s) : 0, 10750064
section iast
Agent [baseline] (1.185 s) : 0, 1184710
Total [baseline] (11.007 s) : 0, 11007068
Agent [candidate] (1.186 s) : 0, 1185970
Total [candidate] (11.021 s) : 0, 11021466
section profiling
Agent [baseline] (1.256 s) : 0, 1255960
Total [baseline] (10.792 s) : 0, 10792419
Agent [candidate] (1.263 s) : 0, 1262532
Total [candidate] (10.903 s) : 0, 10902821
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.06 s -
Agent appsec 1.197 s 136.949 ms (12.9%)
Agent iast 1.185 s 124.748 ms (11.8%)
Agent profiling 1.256 s 195.999 ms (18.5%)
Total tracing 10.452 s -
Total appsec 10.731 s 278.444 ms (2.7%)
Total iast 11.007 s 555.006 ms (5.3%)
Total profiling 10.792 s 340.357 ms (3.3%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.056 s -
Agent appsec 1.197 s 140.468 ms (13.3%)
Agent iast 1.186 s 129.905 ms (12.3%)
Agent profiling 1.263 s 206.467 ms (19.6%)
Total tracing 10.485 s -
Total appsec 10.75 s 264.919 ms (2.5%)
Total iast 11.021 s 536.321 ms (5.1%)
Total profiling 10.903 s 417.676 ms (4.0%)
gantt
    title petclinic - break down per module: candidate=1.46.0-SNAPSHOT~6e11420939, baseline=1.46.0-SNAPSHOT~0b1e6ff859

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (718.283 ms) : 0, 718283
BytebuddyAgent [candidate] (715.362 ms) : 0, 715362
GlobalTracer [baseline] (257.254 ms) : 0, 257254
GlobalTracer [candidate] (256.643 ms) : 0, 256643
AppSec [baseline] (56.28 ms) : 0, 56280
AppSec [candidate] (56.102 ms) : 0, 56102
Remote Config [baseline] (789.571 µs) : 0, 790
Remote Config [candidate] (728.136 µs) : 0, 728
Telemetry [baseline] (12.306 ms) : 0, 12306
Telemetry [candidate] (12.209 ms) : 0, 12209
section appsec
BytebuddyAgent [baseline] (737.471 ms) : 0, 737471
BytebuddyAgent [candidate] (735.585 ms) : 0, 735585
GlobalTracer [baseline] (254.596 ms) : 0, 254596
GlobalTracer [candidate] (255.504 ms) : 0, 255504
AppSec [baseline] (171.12 ms) : 0, 171120
AppSec [candidate] (171.696 ms) : 0, 171696
Remote Config [baseline] (674.051 µs) : 0, 674
Remote Config [candidate] (664.632 µs) : 0, 665
Telemetry [baseline] (8.259 ms) : 0, 8259
Telemetry [candidate] (8.19 ms) : 0, 8190
IAST [baseline] (19.476 ms) : 0, 19476
IAST [candidate] (19.652 ms) : 0, 19652
section iast
BytebuddyAgent [baseline] (832.585 ms) : 0, 832585
BytebuddyAgent [candidate] (834.003 ms) : 0, 834003
GlobalTracer [baseline] (247.576 ms) : 0, 247576
GlobalTracer [candidate] (247.868 ms) : 0, 247868
AppSec [baseline] (58.504 ms) : 0, 58504
AppSec [candidate] (58.025 ms) : 0, 58025
Remote Config [baseline] (686.606 µs) : 0, 687
Remote Config [candidate] (673.611 µs) : 0, 674
Telemetry [baseline] (8.806 ms) : 0, 8806
Telemetry [candidate] (8.804 ms) : 0, 8804
IAST [baseline] (21.61 ms) : 0, 21610
IAST [candidate] (21.605 ms) : 0, 21605
section profiling
BytebuddyAgent [baseline] (703.27 ms) : 0, 703270
BytebuddyAgent [candidate] (707.691 ms) : 0, 707691
GlobalTracer [baseline] (350.294 ms) : 0, 350294
GlobalTracer [candidate] (352.591 ms) : 0, 352591
AppSec [baseline] (54.616 ms) : 0, 54616
AppSec [candidate] (54.467 ms) : 0, 54467
Remote Config [baseline] (657.815 µs) : 0, 658
Remote Config [candidate] (665.486 µs) : 0, 665
Telemetry [baseline] (8.847 ms) : 0, 8847
Telemetry [candidate] (8.854 ms) : 0, 8854
ProfilingAgent [baseline] (96.266 ms) : 0, 96266
ProfilingAgent [candidate] (96.024 ms) : 0, 96024
Profiling [baseline] (96.294 ms) : 0, 96294
Profiling [candidate] (96.051 ms) : 0, 96051
Loading
Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.46.0-SNAPSHOT~6e11420939, baseline=1.46.0-SNAPSHOT~0b1e6ff859

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.057 s) : 0, 1057333
Total [baseline] (8.661 s) : 0, 8661023
Agent [candidate] (1.06 s) : 0, 1059513
Total [candidate] (8.665 s) : 0, 8664950
section iast
Agent [baseline] (1.191 s) : 0, 1191208
Total [baseline] (9.226 s) : 0, 9226464
Agent [candidate] (1.192 s) : 0, 1191740
Total [candidate] (9.222 s) : 0, 9221646
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.192 s) : 0, 1192131
Total [baseline] (9.243 s) : 0, 9243353
Agent [candidate] (1.187 s) : 0, 1187003
Total [candidate] (9.197 s) : 0, 9196609
section iast_TELEMETRY_OFF
Agent [baseline] (1.178 s) : 0, 1178230
Total [baseline] (9.21 s) : 0, 9209698
Agent [candidate] (1.188 s) : 0, 1187686
Total [candidate] (9.219 s) : 0, 9218928
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.057 s -
Agent iast 1.191 s 133.874 ms (12.7%)
Agent iast_HARDCODED_SECRET_DISABLED 1.192 s 134.798 ms (12.7%)
Agent iast_TELEMETRY_OFF 1.178 s 120.897 ms (11.4%)
Total tracing 8.661 s -
Total iast 9.226 s 565.441 ms (6.5%)
Total iast_HARDCODED_SECRET_DISABLED 9.243 s 582.331 ms (6.7%)
Total iast_TELEMETRY_OFF 9.21 s 548.675 ms (6.3%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.06 s -
Agent iast 1.192 s 132.227 ms (12.5%)
Agent iast_HARDCODED_SECRET_DISABLED 1.187 s 127.49 ms (12.0%)
Agent iast_TELEMETRY_OFF 1.188 s 128.173 ms (12.1%)
Total tracing 8.665 s -
Total iast 9.222 s 556.696 ms (6.4%)
Total iast_HARDCODED_SECRET_DISABLED 9.197 s 531.66 ms (6.1%)
Total iast_TELEMETRY_OFF 9.219 s 553.978 ms (6.4%)
gantt
    title insecure-bank - break down per module: candidate=1.46.0-SNAPSHOT~6e11420939, baseline=1.46.0-SNAPSHOT~0b1e6ff859

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (715.27 ms) : 0, 715270
BytebuddyAgent [candidate] (716.083 ms) : 0, 716083
GlobalTracer [baseline] (256.569 ms) : 0, 256569
GlobalTracer [candidate] (257.055 ms) : 0, 257055
AppSec [baseline] (56.813 ms) : 0, 56813
AppSec [candidate] (56.712 ms) : 0, 56712
Remote Config [baseline] (719.051 µs) : 0, 719
Remote Config [candidate] (718.843 µs) : 0, 719
Telemetry [baseline] (12.885 ms) : 0, 12885
Telemetry [candidate] (13.873 ms) : 0, 13873
section iast
BytebuddyAgent [baseline] (838.247 ms) : 0, 838247
BytebuddyAgent [candidate] (839.035 ms) : 0, 839035
GlobalTracer [baseline] (248.443 ms) : 0, 248443
GlobalTracer [candidate] (248.277 ms) : 0, 248277
AppSec [baseline] (58.226 ms) : 0, 58226
AppSec [candidate] (58.218 ms) : 0, 58218
IAST [baseline] (21.646 ms) : 0, 21646
IAST [candidate] (21.48 ms) : 0, 21480
Remote Config [baseline] (668.868 µs) : 0, 669
Remote Config [candidate] (696.103 µs) : 0, 696
Telemetry [baseline] (8.831 ms) : 0, 8831
Telemetry [candidate] (8.845 ms) : 0, 8845
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (838.907 ms) : 0, 838907
BytebuddyAgent [candidate] (833.845 ms) : 0, 833845
GlobalTracer [baseline] (248.296 ms) : 0, 248296
GlobalTracer [candidate] (248.111 ms) : 0, 248111
AppSec [baseline] (58.187 ms) : 0, 58187
AppSec [candidate] (58.65 ms) : 0, 58650
IAST [baseline] (22.001 ms) : 0, 22001
IAST [candidate] (21.747 ms) : 0, 21747
Remote Config [baseline] (663.934 µs) : 0, 664
Remote Config [candidate] (681.463 µs) : 0, 681
Telemetry [baseline] (8.961 ms) : 0, 8961
Telemetry [candidate] (8.861 ms) : 0, 8861
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (828.217 ms) : 0, 828217
BytebuddyAgent [candidate] (834.683 ms) : 0, 834683
GlobalTracer [baseline] (247.07 ms) : 0, 247070
GlobalTracer [candidate] (249.664 ms) : 0, 249664
AppSec [baseline] (57.79 ms) : 0, 57790
AppSec [candidate] (58.116 ms) : 0, 58116
IAST [baseline] (20.873 ms) : 0, 20873
IAST [candidate] (20.809 ms) : 0, 20809
Remote Config [baseline] (664.959 µs) : 0, 665
Remote Config [candidate] (656.624 µs) : 0, 657
Telemetry [baseline] (8.625 ms) : 0, 8625
Telemetry [candidate] (8.594 ms) : 0, 8594
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
end_time 2025-01-15T18:00:39 2025-01-15T18:07:42
git_branch master mhlidd/support_ipv6_host_addresses
git_commit_date 1736952276 1736963305
git_commit_sha 0b1e6ff 6e11420
release_version 1.46.0-SNAPSHOT~0b1e6ff859 1.46.0-SNAPSHOT~6e11420939
start_time 2025-01-15T18:00:25 2025-01-15T18:07:28
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1736964819 1736964819
ci_job_id 767792942 767792942
ci_pipeline_id 53104456 53104456
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
variant iast iast

Summary

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

Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.46.0-SNAPSHOT~6e11420939, baseline=1.46.0-SNAPSHOT~0b1e6ff859
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.35 ms) : 1331, 1370
.   : milestone, 1350,
appsec (1.747 ms) : 1723, 1770
.   : milestone, 1747,
appsec_no_iast (1.751 ms) : 1727, 1775
.   : milestone, 1751,
iast (1.505 ms) : 1481, 1530
.   : milestone, 1505,
profiling (1.558 ms) : 1534, 1582
.   : milestone, 1558,
tracing (1.479 ms) : 1455, 1503
.   : milestone, 1479,
section candidate
no_agent (1.345 ms) : 1325, 1365
.   : milestone, 1345,
appsec (1.754 ms) : 1731, 1777
.   : milestone, 1754,
appsec_no_iast (1.76 ms) : 1737, 1784
.   : milestone, 1760,
iast (1.495 ms) : 1471, 1520
.   : milestone, 1495,
profiling (1.514 ms) : 1490, 1538
.   : milestone, 1514,
tracing (1.477 ms) : 1452, 1502
.   : milestone, 1477,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.35 ms [1.331 ms, 1.37 ms] -
appsec 1.747 ms [1.723 ms, 1.77 ms] 396.307 µs (29.3%)
appsec_no_iast 1.751 ms [1.727 ms, 1.775 ms] 400.458 µs (29.7%)
iast 1.505 ms [1.481 ms, 1.53 ms] 155.094 µs (11.5%)
profiling 1.558 ms [1.534 ms, 1.582 ms] 207.803 µs (15.4%)
tracing 1.479 ms [1.455 ms, 1.503 ms] 128.61 µs (9.5%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.345 ms [1.325 ms, 1.365 ms] -
appsec 1.754 ms [1.731 ms, 1.777 ms] 409.604 µs (30.5%)
appsec_no_iast 1.76 ms [1.737 ms, 1.784 ms] 415.437 µs (30.9%)
iast 1.495 ms [1.471 ms, 1.52 ms] 150.62 µs (11.2%)
profiling 1.514 ms [1.49 ms, 1.538 ms] 168.942 µs (12.6%)
tracing 1.477 ms [1.452 ms, 1.502 ms] 131.836 µs (9.8%)
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.46.0-SNAPSHOT~6e11420939, baseline=1.46.0-SNAPSHOT~0b1e6ff859
    dateFormat X
    axisFormat %s
section baseline
no_agent (371.703 µs) : 352, 392
.   : milestone, 372,
iast (507.32 µs) : 485, 529
.   : milestone, 507,
iast_FULL (743.228 µs) : 721, 765
.   : milestone, 743,
iast_GLOBAL (544.45 µs) : 523, 566
.   : milestone, 544,
iast_HARDCODED_SECRET_DISABLED (501.63 µs) : 480, 523
.   : milestone, 502,
iast_INACTIVE (453.58 µs) : 432, 475
.   : milestone, 454,
iast_TELEMETRY_OFF (494.93 µs) : 472, 517
.   : milestone, 495,
tracing (446.681 µs) : 426, 467
.   : milestone, 447,
section candidate
no_agent (374.367 µs) : 355, 394
.   : milestone, 374,
iast (501.016 µs) : 479, 523
.   : milestone, 501,
iast_FULL (734.149 µs) : 712, 756
.   : milestone, 734,
iast_GLOBAL (549.653 µs) : 527, 572
.   : milestone, 550,
iast_HARDCODED_SECRET_DISABLED (504.939 µs) : 483, 527
.   : milestone, 505,
iast_INACTIVE (457.997 µs) : 436, 480
.   : milestone, 458,
iast_TELEMETRY_OFF (485.575 µs) : 464, 507
.   : milestone, 486,
tracing (445.794 µs) : 425, 466
.   : milestone, 446,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 371.703 µs [351.542 µs, 391.864 µs] -
iast 507.32 µs [485.249 µs, 529.392 µs] 135.617 µs (36.5%)
iast_FULL 743.228 µs [721.134 µs, 765.323 µs] 371.525 µs (100.0%)
iast_GLOBAL 544.45 µs [522.68 µs, 566.219 µs] 172.747 µs (46.5%)
iast_HARDCODED_SECRET_DISABLED 501.63 µs [479.859 µs, 523.401 µs] 129.927 µs (35.0%)
iast_INACTIVE 453.58 µs [432.263 µs, 474.898 µs] 81.877 µs (22.0%)
iast_TELEMETRY_OFF 494.93 µs [472.432 µs, 517.428 µs] 123.227 µs (33.2%)
tracing 446.681 µs [426.018 µs, 467.344 µs] 74.978 µs (20.2%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 374.367 µs [354.783 µs, 393.951 µs] -
iast 501.016 µs [479.44 µs, 522.592 µs] 126.649 µs (33.8%)
iast_FULL 734.149 µs [712.149 µs, 756.149 µs] 359.782 µs (96.1%)
iast_GLOBAL 549.653 µs [527.265 µs, 572.04 µs] 175.286 µs (46.8%)
iast_HARDCODED_SECRET_DISABLED 504.939 µs [483.169 µs, 526.708 µs] 130.572 µs (34.9%)
iast_INACTIVE 457.997 µs [436.365 µs, 479.629 µs] 83.63 µs (22.3%)
iast_TELEMETRY_OFF 485.575 µs [464.201 µs, 506.948 µs] 111.208 µs (29.7%)
tracing 445.794 µs [425.158 µs, 466.429 µs] 71.427 µs (19.1%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mhlidd/support_ipv6_host_addresses
git_commit_date 1736952276 1736963305
git_commit_sha 0b1e6ff 6e11420
release_version 1.46.0-SNAPSHOT~0b1e6ff859 1.46.0-SNAPSHOT~6e11420939
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1736965384 1736965384
ci_job_id 767792944 767792944
ci_pipeline_id 53104456 53104456
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
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 biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.46.0-SNAPSHOT~6e11420939, baseline=1.46.0-SNAPSHOT~0b1e6ff859
    dateFormat X
    axisFormat %s
section baseline
no_agent (15.573 s) : 15573000, 15573000
.   : milestone, 15573000,
appsec (15.15 s) : 15150000, 15150000
.   : milestone, 15150000,
iast (18.587 s) : 18587000, 18587000
.   : milestone, 18587000,
iast_GLOBAL (17.926 s) : 17926000, 17926000
.   : milestone, 17926000,
profiling (14.935 s) : 14935000, 14935000
.   : milestone, 14935000,
tracing (14.783 s) : 14783000, 14783000
.   : milestone, 14783000,
section candidate
no_agent (15.252 s) : 15252000, 15252000
.   : milestone, 15252000,
appsec (15.039 s) : 15039000, 15039000
.   : milestone, 15039000,
iast (18.733 s) : 18733000, 18733000
.   : milestone, 18733000,
iast_GLOBAL (18.084 s) : 18084000, 18084000
.   : milestone, 18084000,
profiling (15.121 s) : 15121000, 15121000
.   : milestone, 15121000,
tracing (14.839 s) : 14839000, 14839000
.   : milestone, 14839000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.573 s [15.573 s, 15.573 s] -
appsec 15.15 s [15.15 s, 15.15 s] -423.0 ms (-2.7%)
iast 18.587 s [18.587 s, 18.587 s] 3.014 s (19.4%)
iast_GLOBAL 17.926 s [17.926 s, 17.926 s] 2.353 s (15.1%)
profiling 14.935 s [14.935 s, 14.935 s] -638.0 ms (-4.1%)
tracing 14.783 s [14.783 s, 14.783 s] -790.0 ms (-5.1%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.252 s [15.252 s, 15.252 s] -
appsec 15.039 s [15.039 s, 15.039 s] -213.0 ms (-1.4%)
iast 18.733 s [18.733 s, 18.733 s] 3.481 s (22.8%)
iast_GLOBAL 18.084 s [18.084 s, 18.084 s] 2.832 s (18.6%)
profiling 15.121 s [15.121 s, 15.121 s] -131.0 ms (-0.9%)
tracing 14.839 s [14.839 s, 14.839 s] -413.0 ms (-2.7%)
Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.46.0-SNAPSHOT~6e11420939, baseline=1.46.0-SNAPSHOT~0b1e6ff859
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.472 ms) : 1460, 1483
.   : milestone, 1472,
appsec (2.37 ms) : 2327, 2413
.   : milestone, 2370,
iast (2.119 ms) : 2065, 2173
.   : milestone, 2119,
iast_GLOBAL (2.158 ms) : 2103, 2212
.   : milestone, 2158,
profiling (1.968 ms) : 1925, 2011
.   : milestone, 1968,
tracing (1.957 ms) : 1915, 1998
.   : milestone, 1957,
section candidate
no_agent (1.471 ms) : 1460, 1483
.   : milestone, 1471,
appsec (2.38 ms) : 2337, 2424
.   : milestone, 2380,
iast (2.108 ms) : 2054, 2162
.   : milestone, 2108,
iast_GLOBAL (2.158 ms) : 2103, 2213
.   : milestone, 2158,
profiling (1.969 ms) : 1925, 2012
.   : milestone, 1969,
tracing (1.956 ms) : 1913, 1998
.   : milestone, 1956,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.472 ms [1.46 ms, 1.483 ms] -
appsec 2.37 ms [2.327 ms, 2.413 ms] 898.429 µs (61.0%)
iast 2.119 ms [2.065 ms, 2.173 ms] 647.253 µs (44.0%)
iast_GLOBAL 2.158 ms [2.103 ms, 2.212 ms] 685.964 µs (46.6%)
profiling 1.968 ms [1.925 ms, 2.011 ms] 496.798 µs (33.8%)
tracing 1.957 ms [1.915 ms, 1.998 ms] 484.889 µs (32.9%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.471 ms [1.46 ms, 1.483 ms] -
appsec 2.38 ms [2.337 ms, 2.424 ms] 909.128 µs (61.8%)
iast 2.108 ms [2.054 ms, 2.162 ms] 636.754 µs (43.3%)
iast_GLOBAL 2.158 ms [2.103 ms, 2.213 ms] 687.1 µs (46.7%)
profiling 1.969 ms [1.925 ms, 2.012 ms] 497.502 µs (33.8%)
tracing 1.956 ms [1.913 ms, 1.998 ms] 484.267 µs (32.9%)

@PerfectSlayer
Copy link
Contributor

Relates to #7713

@mhlidd mhlidd changed the title initial implementation for support ipv6 addresses in dd_agent_host Support IPv6 values for DD_AGENT_HOST and DD_TRACE_AGENT_URL Jan 15, 2025
@mhlidd mhlidd marked this pull request as ready for review January 15, 2025 16:23
@mhlidd mhlidd requested a review from a team as a code owner January 15, 2025 16:23
@mhlidd mhlidd requested a review from PerfectSlayer January 15, 2025 16:23
Copy link
Contributor

github-actions bot commented Jan 15, 2025

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.

@mhlidd mhlidd added the comp: core Tracer core label Jan 15, 2025
@mhlidd mhlidd force-pushed the mhlidd/support_ipv6_host_addresses branch from 8f95aef to 6e11420 Compare January 15, 2025 17:49
Copy link
Contributor

@PerfectSlayer PerfectSlayer left a comment

Choose a reason for hiding this comment

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

Thanks for the fix!

@mhlidd mhlidd added this to the 1.46.0 milestone Jan 16, 2025
@mhlidd mhlidd merged commit 3806d93 into master Jan 16, 2025
173 checks passed
@mhlidd mhlidd deleted the mhlidd/support_ipv6_host_addresses branch January 16, 2025 15:11
svc-squareup-copybara pushed a commit to cashapp/misk that referenced this pull request Jan 31, 2025
| Package | Type | Package file | Manager | Update | Change |
|---|---|---|---|---|---|
|
[com.google.cloud:google-cloud-datastore](https://github.com/googleapis/java-datastore)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`2.25.4` -> `2.26.0` |
| [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.45.2` -> `1.46.0` |
| [com.datadoghq:dd-trace-ot](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.45.2` -> `1.46.0` |
| [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |
|
[software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |
| [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |
| [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |
| [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |
| [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |

---

### Release Notes

<details>
<summary>googleapis/java-datastore
(com.google.cloud:google-cloud-datastore)</summary>

###
[`v2.26.0`](https://github.com/googleapis/java-datastore/blob/HEAD/CHANGELOG.md#2260-2025-01-29)

##### Features

- Add firestoreInDatastoreMode for datastore emulator
([#&#8203;1698](googleapis/java-datastore#1698))
([50f106d](googleapis/java-datastore@50f106d))

##### Dependencies

- Update dependency com.google.cloud:sdk-platform-java-config to v3.42.0
([#&#8203;1725](googleapis/java-datastore#1725))
([1cbaf22](googleapis/java-datastore@1cbaf22))

</details>

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

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

##### Breaking Changes

> \[!WARNING]
> jnr-unixsocket is now an external dependency of dd-trace-ot and must
be included when deploying dd-trace-ot.

> \[!NOTE]
> The API `TracerScope.setAsync(boolean)`, used to manually control
asynchronous span propagation, does no more apply to the scope instance
but to the active span scope.

##### Components

##### Application Security Management (IAST)

- 🐛 Fix String.replace instrumentation for IAST
([#&#8203;8281](DataDog/dd-trace-java#8281) -
[@&#8203;Mariovido](https://github.com/Mariovido))
- ✨ Apply the standard nomenclature to the stacktrace configs
([#&#8203;8244](DataDog/dd-trace-java#8244) -
[@&#8203;jandro996](https://github.com/jandro996))
- 🐛 Exclude false positive weak randomness
([#&#8203;8232](DataDog/dd-trace-java#8232) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Propagation of translateEscapes of String class
([#&#8203;8186](DataDog/dd-trace-java#8186) -
[@&#8203;sezen-datadog](https://github.com/sezen-datadog))
- ✨ Add security control metrics
([#&#8203;8175](DataDog/dd-trace-java#8175) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Increase IAST propagation to StringBuffer setLength
([#&#8203;8128](DataDog/dd-trace-java#8128) -
[@&#8203;Mariovido](https://github.com/Mariovido))
- ✨ Add IAST taint tracking for DB values
([#&#8203;8072](DataDog/dd-trace-java#8072) -
[@&#8203;Mariovido](https://github.com/Mariovido))

##### Application Security Management (WAF)

- 🐛 Prevents a NPE when there is no subscriber for user events
([#&#8203;8258](DataDog/dd-trace-java#8258) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- ✨ Apply the standard nomenclature to the stacktrace configs
([#&#8203;8244](DataDog/dd-trace-java#8244) -
[@&#8203;jandro996](https://github.com/jandro996))
- 🐛 Ensure cached subscriptions are cleared on reconfiguration via
RC ([#&#8203;8229](DataDog/dd-trace-java#8229)
-
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- ✨ Add support for session tracking in Vertx
([#&#8203;8167](DataDog/dd-trace-java#8167) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- ✨ Create span tag: \_dd.appsec.rasp.timeout
([#&#8203;8269](DataDog/dd-trace-java#8269) -
[@&#8203;Mariovido](https://github.com/Mariovido))

##### Build & Tooling

- 🐛 Ensure shaded helpers have unique names when injected into
class-loaders
([#&#8203;8192](DataDog/dd-trace-java#8192) -
[@&#8203;mcculls](https://github.com/mcculls))

##### Configuration at Runtime

- 🐛 Remove filtering of `DD_SERVICE` and `DD_ENV` from the tracer
([#&#8203;8176](DataDog/dd-trace-java#8176) -
[@&#8203;mhlidd](https://github.com/mhlidd))

##### Continuous Integration Visibility

- 🧹 Generalize TestRetryPolicy to TestExecutionPolicy
([#&#8203;8302](DataDog/dd-trace-java#8302) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🧹 Parallelize CI Visibility settings requests
([#&#8203;8299](DataDog/dd-trace-java#8299) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🧹 Generalize test retry logic
([#&#8203;8289](DataDog/dd-trace-java#8289) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🧹 Generalize tests skipping logic
([#&#8203;8288](DataDog/dd-trace-java#8288) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🧹 Remove skip and shouldBeSkipped methods from TestEventsHandler
in favor of isSkippable
([#&#8203;8286](DataDog/dd-trace-java#8286) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨⚡ Optimize Git repository information computation
([#&#8203;8270](DataDog/dd-trace-java#8270) -
[@&#8203;dougqh](https://github.com/dougqh))
- ✨ Always request known tests from the backend
([#&#8203;8268](DataDog/dd-trace-java#8268) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Fix NPE when trying to get retry analyzer in Test NG
([#&#8203;8253](DataDog/dd-trace-java#8253) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🐛 Set test framework and test framework version tags atomically
([#&#8203;8252](DataDog/dd-trace-java#8252) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Add debug logging to Android Gradle module layout logic
([#&#8203;8251](DataDog/dd-trace-java#8251) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🐛 Fix source and destination folders computation for Android
Gradle projects
([#&#8203;8190](DataDog/dd-trace-java#8190) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Add basic Scala Weaver sbt support
([#&#8203;8189](DataDog/dd-trace-java#8189) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Implement impacted tests detection
([#&#8203;8188](DataDog/dd-trace-java#8188) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))

##### Data Streams Monitoring

- ✨ Change hash computation for protobuf to better represent
impacting changes + save proto number in schema
([#&#8203;8201](DataDog/dd-trace-java#8201) -
[@&#8203;vandonr](https://github.com/vandonr))

##### Database Monitoring

- Add peer service tag in dbm sql commenter
([#&#8203;7913](DataDog/dd-trace-java#7913) -
[@&#8203;jordan-wong](https://github.com/jordan-wong))

##### Dynamic Instrumentation

- ✨ Add support for SymDB to scan directories
([#&#8203;8306](DataDog/dd-trace-java#8306) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Add SymDB report for any jar scanning failures
([#&#8203;8300](DataDog/dd-trace-java#8300) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Use two budgets depending on type
([#&#8203;8283](DataDog/dd-trace-java#8283) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- ✨ Institute a 10 snapshot per probe per trace budget
([#&#8203;8277](DataDog/dd-trace-java#8277) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- 🐛 Avoid double snapshots for Exception Replay
([#&#8203;8273](DataDog/dd-trace-java#8273) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Simplify code origins. Separate out snapshot generation.
([#&#8203;8263](DataDog/dd-trace-java#8263) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- ✨ Add Exception probe custom instrumentation
([#&#8203;8230](DataDog/dd-trace-java#8230) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Enhance log probes to honor debug session tags
([#&#8203;8215](DataDog/dd-trace-java#8215) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- 🐛 Don't redact env tokens from debugger probe snapshots
([#&#8203;8211](DataDog/dd-trace-java#8211) -
[@&#8203;watson](https://github.com/watson))
- ✨⚡ Move Trace/SpanId capture at commit time
([#&#8203;8184](DataDog/dd-trace-java#8184) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 🐛 Capture values at entry for method probe
([#&#8203;8169](DataDog/dd-trace-java#8169) -
[@&#8203;jpbempel](https://github.com/jpbempel))

##### JMX fetch

- 🐛 Mute JMXFetch Shutdown in progress error
([#&#8203;8068](DataDog/dd-trace-java#8068) -
[@&#8203;ygree](https://github.com/ygree))

##### OpenTracing

- ⚠️🧹 Make jnr-unixsocket an explicit dependency of
dd-trace-ot
([#&#8203;8307](DataDog/dd-trace-java#8307) -
[@&#8203;mcculls](https://github.com/mcculls))

##### Profiling

- 🐛 Avoid unsupported API call for creating folders on windows
([#&#8203;8304](DataDog/dd-trace-java#8304) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- ✨ Tag profiles for serverless
([#&#8203;8279](DataDog/dd-trace-java#8279) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- ✨ add queue type and length to queue events
([#&#8203;8242](DataDog/dd-trace-java#8242) -
[@&#8203;richardstartin](https://github.com/richardstartin))
- 🐛 TempLocationManager Fixes and Improvements
([#&#8203;8191](DataDog/dd-trace-java#8191) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- ✨ Bump ddprof to 1.18.0
([#&#8203;8173](DataDog/dd-trace-java#8173) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- ✨ Report profiler initialization and configuration errors to
telemetry
([#&#8203;8171](DataDog/dd-trace-java#8171) -
[@&#8203;jbachorik](https://github.com/jbachorik))

##### Telemetry

- ✨ Add pending traces report in tracer flares
([#&#8203;8053](DataDog/dd-trace-java#8053) -
[@&#8203;mhlidd](https://github.com/mhlidd))

##### Testing

- ✨ Test http server requests in parallel
([#&#8203;8222](DataDog/dd-trace-java#8222) -
[@&#8203;amarziali](https://github.com/amarziali))

##### Trace context propagation

- ✨ Add non default propagator registration
([#&#8203;8310](DataDog/dd-trace-java#8310) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))

##### Tracer core

- ✨ Probe for existence of IBMSASL or ACCP security providers
([#&#8203;8276](DataDog/dd-trace-java#8276) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨⚡ Overhead improvement to agent feedback based sampling
([#&#8203;8265](DataDog/dd-trace-java#8265) -
[@&#8203;dougqh](https://github.com/dougqh))
- 🧹 Move async propagation API from scope to tracer
([#&#8203;8231](DataDog/dd-trace-java#8231) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨ Introduce context propagation API
([#&#8203;8161](DataDog/dd-trace-java#8161) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨🧪 Use env-entry to add tags per webapp deployment
([#&#8203;8138](DataDog/dd-trace-java#8138) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Introduce context helpers API
([#&#8203;8134](DataDog/dd-trace-java#8134) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨ Support IPv6 values for `DD_AGENT_HOST` and
`DD_TRACE_AGENT_URL`
([#&#8203;7984](DataDog/dd-trace-java#7984) -
[@&#8203;mhlidd](https://github.com/mhlidd))

##### Instrumentations

##### Apache HttpComponents

- 🐛 Properly finish spans and support latest apache httpclient5
([#&#8203;8272](DataDog/dd-trace-java#8272) -
[@&#8203;amarziali](https://github.com/amarziali))

##### AWS Lambda instrumentation

- 🐛 Properly capture lambda payloads for all handler types.
([#&#8203;8264](DataDog/dd-trace-java#8264) -
[@&#8203;purple4reina](https://github.com/purple4reina))

##### AWS S3 instrumentation

- 💡 Create S3 instrumentation + add span pointers
([#&#8203;8075](DataDog/dd-trace-java#8075) -
[@&#8203;nhulston](https://github.com/nhulston))

##### AWS SDK instrumentation

- 🐛 Revert "Add avoid double instrumenting lambda non-streaming
handlers."
([#&#8203;8247](DataDog/dd-trace-java#8247) -
[@&#8203;nhulston](https://github.com/nhulston))

##### Cassandra

- ✨ Allow extracting keyspace from statement result
([#&#8203;8239](DataDog/dd-trace-java#8239) -
[@&#8203;amarziali](https://github.com/amarziali))

##### Core Java language instrumentation

- ✨ Propagation of translateEscapes of String class
([#&#8203;8186](DataDog/dd-trace-java#8186) -
[@&#8203;sezen-datadog](https://github.com/sezen-datadog))

##### Eclipse Vert.x instrumentation

- 🐛 Fix vertx worker propagation and error handling
([#&#8203;8237](DataDog/dd-trace-java#8237) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Support vertx 5
([#&#8203;8220](DataDog/dd-trace-java#8220) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Add support for session tracking in Vertx
([#&#8203;8167](DataDog/dd-trace-java#8167) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))

##### Kafka instrumentation

- 🐛 Prevent possible NPE calculating Kafka record header size
([#&#8203;8292](DataDog/dd-trace-java#8292) -
[@&#8203;ygree](https://github.com/ygree))

##### Mule instrumentation

- 🐛 Fix crash using Mule with JPMS
([#&#8203;8187](DataDog/dd-trace-java#8187) -
[@&#8203;amarziali](https://github.com/amarziali))

##### Protocol Buffer instrumentation

- ✨ Change hash computation for protobuf to better represent
impacting changes + save proto number in schema
([#&#8203;8201](DataDog/dd-trace-java#8201) -
[@&#8203;vandonr](https://github.com/vandonr))

##### Spring instrumentation

- 🐛 Preserve getQualifier from spring scheduling runnables
([#&#8203;8293](DataDog/dd-trace-java#8293) -
[@&#8203;amarziali](https://github.com/amarziali))

</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**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- 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: bb09d47e4eed77a003f630273b4d0a84003eb899
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