Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Add 1 minute fail-safe to JUL/JMX class-loading callback #8399

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 1 commit into from
Feb 17, 2025

Conversation

mcculls
Copy link
Contributor

@mcculls mcculls commented Feb 17, 2025

Motivation

Add a timeout in case the class used to trigger resuming of remote components was already unintentionally loaded during premain - in such cases we may not receive a class-load callback from byte-buddy.

Additional Notes

We could also look at the loaded class list (via Instrumentation) after installing byte-buddy, but this would involve performing name checks across all of those classes which could add up (the list of loaded classes is unsorted)

It would also not cover the case where for some reason JUL or JMX is never touched in the application, despite there being a custom log-manager or jmx-builder set.

Contributor Checklist

Jira ticket: APMS-14743

remote components was already unintentionally loaded during premain.

(in such cases we may not receive a class-load callback from byte-buddy)
@pr-commenter
Copy link

pr-commenter bot commented Feb 17, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mcculls/add-failsafe-for-classload-callback
git_commit_date 1739556495 1739751996
git_commit_sha bab17ef aa1d96b
release_version 1.47.0-SNAPSHOT~bab17eff8d 1.47.0-SNAPSHOT~aa1d96b69d
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1739754667 1739754667
ci_job_id 810135082 810135082
ci_pipeline_id 56037148 56037148
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-bhk45yhh-project-304-concurrent-0-ijmejr7c 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:50:46 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux Linux runner-bhk45yhh-project-304-concurrent-0-ijmejr7c 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:50:46 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
module Agent Agent
parent None None
variant iast iast

Summary

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

Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.47.0-SNAPSHOT~aa1d96b69d, baseline=1.47.0-SNAPSHOT~bab17eff8d

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.041 s) : 0, 1040568
Total [baseline] (8.652 s) : 0, 8652146
Agent [candidate] (1.039 s) : 0, 1039209
Total [candidate] (8.657 s) : 0, 8657111
section iast
Agent [baseline] (1.172 s) : 0, 1171690
Total [baseline] (9.231 s) : 0, 9231097
Agent [candidate] (1.188 s) : 0, 1187823
Total [candidate] (9.323 s) : 0, 9322943
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.169 s) : 0, 1169256
Total [baseline] (9.272 s) : 0, 9271902
Agent [candidate] (1.169 s) : 0, 1169324
Total [candidate] (9.246 s) : 0, 9246143
section iast_TELEMETRY_OFF
Agent [baseline] (1.175 s) : 0, 1174988
Total [baseline] (9.241 s) : 0, 9240732
Agent [candidate] (1.167 s) : 0, 1167308
Total [candidate] (9.239 s) : 0, 9239434
Loading
  • baseline results
Module Variant Duration Ξ” tracing
Agent tracing 1.041 s -
Agent iast 1.172 s 131.122 ms (12.6%)
Agent iast_HARDCODED_SECRET_DISABLED 1.169 s 128.689 ms (12.4%)
Agent iast_TELEMETRY_OFF 1.175 s 134.421 ms (12.9%)
Total tracing 8.652 s -
Total iast 9.231 s 578.951 ms (6.7%)
Total iast_HARDCODED_SECRET_DISABLED 9.272 s 619.756 ms (7.2%)
Total iast_TELEMETRY_OFF 9.241 s 588.586 ms (6.8%)
  • candidate results
Module Variant Duration Ξ” tracing
Agent tracing 1.039 s -
Agent iast 1.188 s 148.614 ms (14.3%)
Agent iast_HARDCODED_SECRET_DISABLED 1.169 s 130.115 ms (12.5%)
Agent iast_TELEMETRY_OFF 1.167 s 128.099 ms (12.3%)
Total tracing 8.657 s -
Total iast 9.323 s 665.832 ms (7.7%)
Total iast_HARDCODED_SECRET_DISABLED 9.246 s 589.032 ms (6.8%)
Total iast_TELEMETRY_OFF 9.239 s 582.323 ms (6.7%)
gantt
    title insecure-bank - break down per module: candidate=1.47.0-SNAPSHOT~aa1d96b69d, baseline=1.47.0-SNAPSHOT~bab17eff8d

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (716.184 ms) : 0, 716184
BytebuddyAgent [candidate] (717.349 ms) : 0, 717349
GlobalTracer [baseline] (239.822 ms) : 0, 239822
GlobalTracer [candidate] (239.268 ms) : 0, 239268
AppSec [baseline] (55.659 ms) : 0, 55659
AppSec [candidate] (55.157 ms) : 0, 55157
Remote Config [baseline] (716.676 Β΅s) : 0, 717
Remote Config [candidate] (698.064 Β΅s) : 0, 698
Telemetry [baseline] (12.926 ms) : 0, 12926
Telemetry [candidate] (11.55 ms) : 0, 11550
section iast
BytebuddyAgent [baseline] (836.464 ms) : 0, 836464
BytebuddyAgent [candidate] (848.372 ms) : 0, 848372
GlobalTracer [baseline] (230.599 ms) : 0, 230599
GlobalTracer [candidate] (233.204 ms) : 0, 233204
IAST [baseline] (22.764 ms) : 0, 22764
IAST [candidate] (23.101 ms) : 0, 23101
AppSec [baseline] (57.245 ms) : 0, 57245
AppSec [candidate] (58.097 ms) : 0, 58097
Remote Config [baseline] (613.745 Β΅s) : 0, 614
Remote Config [candidate] (636.575 Β΅s) : 0, 637
Telemetry [baseline] (8.745 ms) : 0, 8745
Telemetry [candidate] (8.892 ms) : 0, 8892
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (833.471 ms) : 0, 833471
BytebuddyAgent [candidate] (834.842 ms) : 0, 834842
GlobalTracer [baseline] (230.569 ms) : 0, 230569
GlobalTracer [candidate] (230.393 ms) : 0, 230393
IAST [baseline] (23.0 ms) : 0, 23000
IAST [candidate] (22.584 ms) : 0, 22584
AppSec [baseline] (57.529 ms) : 0, 57529
AppSec [candidate] (57.05 ms) : 0, 57050
Remote Config [baseline] (642.519 Β΅s) : 0, 643
Remote Config [candidate] (618.762 Β΅s) : 0, 619
Telemetry [baseline] (8.762 ms) : 0, 8762
Telemetry [candidate] (8.567 ms) : 0, 8567
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (838.42 ms) : 0, 838420
BytebuddyAgent [candidate] (832.409 ms) : 0, 832409
GlobalTracer [baseline] (231.975 ms) : 0, 231975
GlobalTracer [candidate] (230.643 ms) : 0, 230643
IAST [baseline] (23.488 ms) : 0, 23488
IAST [candidate] (26.213 ms) : 0, 26213
AppSec [baseline] (56.536 ms) : 0, 56536
AppSec [candidate] (53.456 ms) : 0, 53456
Remote Config [baseline] (628.122 Β΅s) : 0, 628
Remote Config [candidate] (628.466 Β΅s) : 0, 628
Telemetry [baseline] (8.56 ms) : 0, 8560
Telemetry [candidate] (8.714 ms) : 0, 8714
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.47.0-SNAPSHOT~aa1d96b69d, baseline=1.47.0-SNAPSHOT~bab17eff8d

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.037 s) : 0, 1036672
Total [baseline] (10.468 s) : 0, 10468266
Agent [candidate] (1.04 s) : 0, 1039743
Total [candidate] (10.476 s) : 0, 10475792
section appsec
Agent [baseline] (1.181 s) : 0, 1181465
Total [baseline] (10.817 s) : 0, 10816818
Agent [candidate] (1.182 s) : 0, 1181810
Total [candidate] (10.768 s) : 0, 10767911
section iast
Agent [baseline] (1.17 s) : 0, 1169656
Total [baseline] (11.018 s) : 0, 11018143
Agent [candidate] (1.17 s) : 0, 1169699
Total [candidate] (10.997 s) : 0, 10996941
section profiling
Agent [baseline] (1.27 s) : 0, 1269630
Total [baseline] (10.967 s) : 0, 10966863
Agent [candidate] (1.261 s) : 0, 1261293
Total [candidate] (10.986 s) : 0, 10985809
Loading
  • baseline results
Module Variant Duration Ξ” tracing
Agent tracing 1.037 s -
Agent appsec 1.181 s 144.792 ms (14.0%)
Agent iast 1.17 s 132.983 ms (12.8%)
Agent profiling 1.27 s 232.957 ms (22.5%)
Total tracing 10.468 s -
Total appsec 10.817 s 348.552 ms (3.3%)
Total iast 11.018 s 549.877 ms (5.3%)
Total profiling 10.967 s 498.598 ms (4.8%)
  • candidate results
Module Variant Duration Ξ” tracing
Agent tracing 1.04 s -
Agent appsec 1.182 s 142.068 ms (13.7%)
Agent iast 1.17 s 129.956 ms (12.5%)
Agent profiling 1.261 s 221.55 ms (21.3%)
Total tracing 10.476 s -
Total appsec 10.768 s 292.119 ms (2.8%)
Total iast 10.997 s 521.149 ms (5.0%)
Total profiling 10.986 s 510.017 ms (4.9%)
gantt
    title petclinic - break down per module: candidate=1.47.0-SNAPSHOT~aa1d96b69d, baseline=1.47.0-SNAPSHOT~bab17eff8d

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (715.809 ms) : 0, 715809
BytebuddyAgent [candidate] (716.962 ms) : 0, 716962
GlobalTracer [baseline] (238.94 ms) : 0, 238940
GlobalTracer [candidate] (239.624 ms) : 0, 239624
AppSec [baseline] (55.268 ms) : 0, 55268
AppSec [candidate] (55.2 ms) : 0, 55200
Remote Config [baseline] (692.356 Β΅s) : 0, 692
Remote Config [candidate] (693.3 Β΅s) : 0, 693
Telemetry [baseline] (10.808 ms) : 0, 10808
Telemetry [candidate] (12.066 ms) : 0, 12066
section appsec
BytebuddyAgent [baseline] (733.636 ms) : 0, 733636
BytebuddyAgent [candidate] (733.548 ms) : 0, 733548
GlobalTracer [baseline] (236.302 ms) : 0, 236302
GlobalTracer [candidate] (236.583 ms) : 0, 236583
AppSec [baseline] (176.715 ms) : 0, 176715
AppSec [candidate] (176.966 ms) : 0, 176966
Remote Config [baseline] (658.219 Β΅s) : 0, 658
Remote Config [candidate] (664.396 Β΅s) : 0, 664
Telemetry [baseline] (8.207 ms) : 0, 8207
Telemetry [candidate] (8.196 ms) : 0, 8196
IAST [baseline] (21.376 ms) : 0, 21376
IAST [candidate] (21.25 ms) : 0, 21250
section iast
BytebuddyAgent [baseline] (834.577 ms) : 0, 834577
BytebuddyAgent [candidate] (834.102 ms) : 0, 834102
GlobalTracer [baseline] (230.012 ms) : 0, 230012
GlobalTracer [candidate] (230.271 ms) : 0, 230271
AppSec [baseline] (57.587 ms) : 0, 57587
AppSec [candidate] (57.907 ms) : 0, 57907
Remote Config [baseline] (622.334 Β΅s) : 0, 622
Remote Config [candidate] (631.462 Β΅s) : 0, 631
Telemetry [baseline] (8.689 ms) : 0, 8689
Telemetry [candidate] (8.776 ms) : 0, 8776
IAST [baseline] (22.894 ms) : 0, 22894
IAST [candidate] (22.771 ms) : 0, 22771
section profiling
BytebuddyAgent [baseline] (712.069 ms) : 0, 712069
BytebuddyAgent [candidate] (708.103 ms) : 0, 708103
GlobalTracer [baseline] (351.909 ms) : 0, 351909
GlobalTracer [candidate] (350.387 ms) : 0, 350387
AppSec [baseline] (55.825 ms) : 0, 55825
AppSec [candidate] (54.538 ms) : 0, 54538
Remote Config [baseline] (693.916 Β΅s) : 0, 694
Remote Config [candidate] (685.49 Β΅s) : 0, 685
Telemetry [baseline] (8.981 ms) : 0, 8981
Telemetry [candidate] (8.869 ms) : 0, 8869
ProfilingAgent [baseline] (97.565 ms) : 0, 97565
ProfilingAgent [candidate] (96.339 ms) : 0, 96339
Profiling [baseline] (97.589 ms) : 0, 97589
Profiling [candidate] (96.363 ms) : 0, 96363
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
end_time 2025-02-17T00:40:56 2025-02-17T00:48:01
git_branch master mcculls/add-failsafe-for-classload-callback
git_commit_date 1739556495 1739751996
git_commit_sha bab17ef aa1d96b
release_version 1.47.0-SNAPSHOT~bab17eff8d 1.47.0-SNAPSHOT~aa1d96b69d
start_time 2025-02-17T00:40:42 2025-02-17T00:47:47
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1739753641 1739753641
ci_job_id 810135083 810135083
ci_pipeline_id 56037148 56037148
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-bhk45yhh-project-304-concurrent-1-xjg93y66 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:50:46 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux Linux runner-bhk45yhh-project-304-concurrent-1-xjg93y66 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:50:46 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
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.47.0-SNAPSHOT~aa1d96b69d, baseline=1.47.0-SNAPSHOT~bab17eff8d
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.359 ms) : 1340, 1378
.   : milestone, 1359,
appsec (1.74 ms) : 1717, 1764
.   : milestone, 1740,
appsec_no_iast (1.751 ms) : 1726, 1775
.   : milestone, 1751,
iast (1.516 ms) : 1492, 1540
.   : milestone, 1516,
profiling (1.518 ms) : 1494, 1542
.   : milestone, 1518,
tracing (1.495 ms) : 1471, 1519
.   : milestone, 1495,
section candidate
no_agent (1.367 ms) : 1347, 1387
.   : milestone, 1367,
appsec (1.771 ms) : 1747, 1795
.   : milestone, 1771,
appsec_no_iast (1.772 ms) : 1749, 1796
.   : milestone, 1772,
iast (1.521 ms) : 1497, 1546
.   : milestone, 1521,
profiling (1.516 ms) : 1492, 1540
.   : milestone, 1516,
tracing (1.488 ms) : 1463, 1514
.   : milestone, 1488,
Loading
  • baseline results
Variant Request duration [CI 0.99] Ξ” no_agent
no_agent 1.359 ms [1.34 ms, 1.378 ms] -
appsec 1.74 ms [1.717 ms, 1.764 ms] 381.699 Β΅s (28.1%)
appsec_no_iast 1.751 ms [1.726 ms, 1.775 ms] 391.891 Β΅s (28.8%)
iast 1.516 ms [1.492 ms, 1.54 ms] 157.491 Β΅s (11.6%)
profiling 1.518 ms [1.494 ms, 1.542 ms] 159.444 Β΅s (11.7%)
tracing 1.495 ms [1.471 ms, 1.519 ms] 135.965 Β΅s (10.0%)
  • candidate results
Variant Request duration [CI 0.99] Ξ” no_agent
no_agent 1.367 ms [1.347 ms, 1.387 ms] -
appsec 1.771 ms [1.747 ms, 1.795 ms] 404.071 Β΅s (29.6%)
appsec_no_iast 1.772 ms [1.749 ms, 1.796 ms] 405.433 Β΅s (29.7%)
iast 1.521 ms [1.497 ms, 1.546 ms] 154.428 Β΅s (11.3%)
profiling 1.516 ms [1.492 ms, 1.54 ms] 149.076 Β΅s (10.9%)
tracing 1.488 ms [1.463 ms, 1.514 ms] 121.095 Β΅s (8.9%)
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.47.0-SNAPSHOT~aa1d96b69d, baseline=1.47.0-SNAPSHOT~bab17eff8d
    dateFormat X
    axisFormat %s
section baseline
no_agent (384.385 Β΅s) : 363, 405
.   : milestone, 384,
iast (512.379 Β΅s) : 491, 534
.   : milestone, 512,
iast_FULL (749.302 Β΅s) : 727, 771
.   : milestone, 749,
iast_GLOBAL (562.388 Β΅s) : 541, 584
.   : milestone, 562,
iast_HARDCODED_SECRET_DISABLED (512.247 Β΅s) : 491, 534
.   : milestone, 512,
iast_INACTIVE (463.059 Β΅s) : 442, 484
.   : milestone, 463,
iast_TELEMETRY_OFF (504.079 Β΅s) : 481, 527
.   : milestone, 504,
tracing (461.505 Β΅s) : 440, 483
.   : milestone, 462,
section candidate
no_agent (381.189 Β΅s) : 362, 401
.   : milestone, 381,
iast (515.861 Β΅s) : 494, 538
.   : milestone, 516,
iast_FULL (750.786 Β΅s) : 729, 773
.   : milestone, 751,
iast_GLOBAL (564.176 Β΅s) : 542, 587
.   : milestone, 564,
iast_HARDCODED_SECRET_DISABLED (518.912 Β΅s) : 497, 541
.   : milestone, 519,
iast_INACTIVE (469.515 Β΅s) : 447, 492
.   : milestone, 470,
iast_TELEMETRY_OFF (501.029 Β΅s) : 479, 523
.   : milestone, 501,
tracing (455.175 Β΅s) : 435, 476
.   : milestone, 455,
Loading
  • baseline results
Variant Request duration [CI 0.99] Ξ” no_agent
no_agent 384.385 Β΅s [363.321 Β΅s, 405.449 Β΅s] -
iast 512.379 Β΅s [490.645 Β΅s, 534.113 Β΅s] 127.994 Β΅s (33.3%)
iast_FULL 749.302 Β΅s [727.393 Β΅s, 771.211 Β΅s] 364.917 Β΅s (94.9%)
iast_GLOBAL 562.388 Β΅s [540.523 Β΅s, 584.252 Β΅s] 178.003 Β΅s (46.3%)
iast_HARDCODED_SECRET_DISABLED 512.247 Β΅s [490.657 Β΅s, 533.837 Β΅s] 127.862 Β΅s (33.3%)
iast_INACTIVE 463.059 Β΅s [441.956 Β΅s, 484.163 Β΅s] 78.674 Β΅s (20.5%)
iast_TELEMETRY_OFF 504.079 Β΅s [480.837 Β΅s, 527.322 Β΅s] 119.695 Β΅s (31.1%)
tracing 461.505 Β΅s [440.403 Β΅s, 482.608 Β΅s] 77.121 Β΅s (20.1%)
  • candidate results
Variant Request duration [CI 0.99] Ξ” no_agent
no_agent 381.189 Β΅s [361.678 Β΅s, 400.701 Β΅s] -
iast 515.861 Β΅s [494.165 Β΅s, 537.556 Β΅s] 134.672 Β΅s (35.3%)
iast_FULL 750.786 Β΅s [728.879 Β΅s, 772.693 Β΅s] 369.597 Β΅s (97.0%)
iast_GLOBAL 564.176 Β΅s [541.656 Β΅s, 586.696 Β΅s] 182.986 Β΅s (48.0%)
iast_HARDCODED_SECRET_DISABLED 518.912 Β΅s [496.868 Β΅s, 540.956 Β΅s] 137.723 Β΅s (36.1%)
iast_INACTIVE 469.515 Β΅s [446.711 Β΅s, 492.319 Β΅s] 88.326 Β΅s (23.2%)
iast_TELEMETRY_OFF 501.029 Β΅s [479.345 Β΅s, 522.714 Β΅s] 119.84 Β΅s (31.4%)
tracing 455.175 Β΅s [434.572 Β΅s, 475.778 Β΅s] 73.986 Β΅s (19.4%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mcculls/add-failsafe-for-classload-callback
git_commit_date 1739556495 1739751996
git_commit_sha bab17ef aa1d96b
release_version 1.47.0-SNAPSHOT~bab17eff8d 1.47.0-SNAPSHOT~aa1d96b69d
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1739754166 1739754166
ci_job_id 810135084 810135084
ci_pipeline_id 56037148 56037148
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-hzy35tlz-project-304-concurrent-0-l75776b2 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:50:46 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux Linux runner-hzy35tlz-project-304-concurrent-0-l75776b2 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:50:46 UTC 2024 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 biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.47.0-SNAPSHOT~aa1d96b69d, baseline=1.47.0-SNAPSHOT~bab17eff8d
    dateFormat X
    axisFormat %s
section baseline
no_agent (15.222 s) : 15222000, 15222000
.   : milestone, 15222000,
appsec (14.965 s) : 14965000, 14965000
.   : milestone, 14965000,
iast (19.142 s) : 19142000, 19142000
.   : milestone, 19142000,
iast_GLOBAL (17.614 s) : 17614000, 17614000
.   : milestone, 17614000,
profiling (15.125 s) : 15125000, 15125000
.   : milestone, 15125000,
tracing (14.839 s) : 14839000, 14839000
.   : milestone, 14839000,
section candidate
no_agent (14.861 s) : 14861000, 14861000
.   : milestone, 14861000,
appsec (15.155 s) : 15155000, 15155000
.   : milestone, 15155000,
iast (18.843 s) : 18843000, 18843000
.   : milestone, 18843000,
iast_GLOBAL (17.966 s) : 17966000, 17966000
.   : milestone, 17966000,
profiling (15.126 s) : 15126000, 15126000
.   : milestone, 15126000,
tracing (15.011 s) : 15011000, 15011000
.   : milestone, 15011000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Ξ” no_agent
no_agent 15.222 s [15.222 s, 15.222 s] -
appsec 14.965 s [14.965 s, 14.965 s] -257.0 ms (-1.7%)
iast 19.142 s [19.142 s, 19.142 s] 3.92 s (25.8%)
iast_GLOBAL 17.614 s [17.614 s, 17.614 s] 2.392 s (15.7%)
profiling 15.125 s [15.125 s, 15.125 s] -97.0 ms (-0.6%)
tracing 14.839 s [14.839 s, 14.839 s] -383.0 ms (-2.5%)
  • candidate results
Variant Execution Time [CI 0.99] Ξ” no_agent
no_agent 14.861 s [14.861 s, 14.861 s] -
appsec 15.155 s [15.155 s, 15.155 s] 294.0 ms (2.0%)
iast 18.843 s [18.843 s, 18.843 s] 3.982 s (26.8%)
iast_GLOBAL 17.966 s [17.966 s, 17.966 s] 3.105 s (20.9%)
profiling 15.126 s [15.126 s, 15.126 s] 265.0 ms (1.8%)
tracing 15.011 s [15.011 s, 15.011 s] 150.0 ms (1.0%)
Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.47.0-SNAPSHOT~aa1d96b69d, baseline=1.47.0-SNAPSHOT~bab17eff8d
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.476 ms) : 1465, 1488
.   : milestone, 1476,
appsec (2.374 ms) : 2330, 2418
.   : milestone, 2374,
iast (2.118 ms) : 2063, 2174
.   : milestone, 2118,
iast_GLOBAL (2.171 ms) : 2115, 2227
.   : milestone, 2171,
profiling (1.969 ms) : 1925, 2013
.   : milestone, 1969,
tracing (1.948 ms) : 1906, 1991
.   : milestone, 1948,
section candidate
no_agent (1.475 ms) : 1464, 1487
.   : milestone, 1475,
appsec (2.376 ms) : 2333, 2420
.   : milestone, 2376,
iast (2.124 ms) : 2069, 2179
.   : milestone, 2124,
iast_GLOBAL (2.17 ms) : 2114, 2226
.   : milestone, 2170,
profiling (2.001 ms) : 1956, 2046
.   : milestone, 2001,
tracing (1.953 ms) : 1910, 1995
.   : milestone, 1953,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Ξ” no_agent
no_agent 1.476 ms [1.465 ms, 1.488 ms] -
appsec 2.374 ms [2.33 ms, 2.418 ms] 898.177 Β΅s (60.8%)
iast 2.118 ms [2.063 ms, 2.174 ms] 642.227 Β΅s (43.5%)
iast_GLOBAL 2.171 ms [2.115 ms, 2.227 ms] 694.569 Β΅s (47.1%)
profiling 1.969 ms [1.925 ms, 2.013 ms] 492.612 Β΅s (33.4%)
tracing 1.948 ms [1.906 ms, 1.991 ms] 472.062 Β΅s (32.0%)
  • candidate results
Variant Execution Time [CI 0.99] Ξ” no_agent
no_agent 1.475 ms [1.464 ms, 1.487 ms] -
appsec 2.376 ms [2.333 ms, 2.42 ms] 901.178 Β΅s (61.1%)
iast 2.124 ms [2.069 ms, 2.179 ms] 648.868 Β΅s (44.0%)
iast_GLOBAL 2.17 ms [2.114 ms, 2.226 ms] 694.609 Β΅s (47.1%)
profiling 2.001 ms [1.956 ms, 2.046 ms] 525.761 Β΅s (35.6%)
tracing 1.953 ms [1.91 ms, 1.995 ms] 477.416 Β΅s (32.4%)

@mcculls mcculls marked this pull request as ready for review February 17, 2025 09:01
@mcculls mcculls requested a review from a team as a code owner February 17, 2025 09:01
@@ -448,6 +448,8 @@ private static void registerLogManagerCallback(final ClassLoadCallBack callback)
}

private static void registerMBeanServerBuilderCallback(final ClassLoadCallBack callback) {
// one minute fail-safe in case the class was unintentionally loaded during premain
AgentTaskScheduler.INSTANCE.schedule(callback, 1, TimeUnit.MINUTES);

Choose a reason for hiding this comment

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

Originally scheduleJmxStart added some jitter to the task (not sure if it's required here).

Copy link
Contributor Author

Choose a reason for hiding this comment

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

It's not required, in the original code it was just a side-effect of sharing the method. In the other path the jitter is used to reduce the chance of multiple Java processes that started at the same time from flooding the agent with connection attempts.

However using jitter here is only really appropriate if we had a fleet of services which:

  • all set a custom log-manager
  • all encountered the issue where JUL was unintentionally initialized during premain
  • all started at the exact same time

in such circumstances jitter would be useful, but the chance of such a scenario happening is low.

@mcculls mcculls merged commit 1317224 into master Feb 17, 2025
209 of 210 checks passed
@mcculls mcculls deleted the mcculls/add-failsafe-for-classload-callback branch February 17, 2025 10:42
@github-actions github-actions bot added this to the 1.47.0 milestone Feb 17, 2025
svc-squareup-copybara pushed a commit to cashapp/misk that referenced this pull request Mar 6, 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.46.1` -> `1.47.0` |
| [com.datadoghq:dd-trace-ot](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.46.1` -> `1.47.0` |
| [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.33` -> `2.30.34` |
| [software.amazon.awssdk:sqs](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.33` -> `2.30.34` |
|
[software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.33` -> `2.30.34` |
| [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.33` -> `2.30.34` |
| [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.33` -> `2.30.34` |
| [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.33` -> `2.30.34` |
| [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.33` -> `2.30.34` |

---

### Release Notes

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

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

##### Components

##### Application Security Management (IAST)

- πŸ› Exclude com.stripe.net.HttpURLConnectionClient to solve IAST
SSRF vulnerability false positives
([#&#8203;8483](DataDog/dd-trace-java#8483) -
[@&#8203;jandro996](https://github.com/jandro996))
- πŸ› Add exclusion to solve IAST weak randomness vulnerability false
positives
([#&#8203;8462](DataDog/dd-trace-java#8462) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Fix weak randomness false positive in Kafka client
([#&#8203;8408](DataDog/dd-trace-java#8408) -
[@&#8203;smola](https://github.com/smola))
- ✨ Fix location for SSRF with Kong Unirest
([#&#8203;8407](DataDog/dd-trace-java#8407) -
[@&#8203;smola](https://github.com/smola))
- ✨ Exclude IBM Instana from IAST
([#&#8203;8406](DataDog/dd-trace-java#8406) -
[@&#8203;smola](https://github.com/smola))
- πŸ› Fix org.json iast instrumentation test for latest dependency
([#&#8203;8347](DataDog/dd-trace-java#8347) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Configuration to Disable APM Tracing
([#&#8203;8219](DataDog/dd-trace-java#8219) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Address cookie vulnerability cardinality issues
([#&#8203;8210](DataDog/dd-trace-java#8210) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Email HTML Injection detection in IAST
([#&#8203;8205](DataDog/dd-trace-java#8205) -
[@&#8203;sezen-datadog](https://github.com/sezen-datadog))

##### Application Security Management (WAF)

- πŸ›βœ¨ Ensure usr.exists tag is not overridden when
UsernameNotFoundException is thrown
([#&#8203;8376](DataDog/dd-trace-java#8376) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- πŸ›βœ¨ Ensure usr.exists tag is not overridden by auto
instrumentation
([#&#8203;8374](DataDog/dd-trace-java#8374) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- ✨ Update appsec metrics with event_rules_version tag
([#&#8203;8354](DataDog/dd-trace-java#8354) -
[@&#8203;sezen-datadog](https://github.com/sezen-datadog))
- ✨ Update metrics: appsec.waf.requests
([#&#8203;8353](DataDog/dd-trace-java#8353) -
[@&#8203;Mariovido](https://github.com/Mariovido))
- ✨ Improve ASM support in vert.x 5.0
([#&#8203;8285](DataDog/dd-trace-java#8285) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- ✨ Update metrics: appsec.waf.updates and appsec.waf.init
([#&#8203;8280](DataDog/dd-trace-java#8280) -
[@&#8203;Mariovido](https://github.com/Mariovido))
- ✨ Configuration to Disable APM Tracing
([#&#8203;8219](DataDog/dd-trace-java#8219) -
[@&#8203;jandro996](https://github.com/jandro996))

##### Build & Tooling

- πŸ› Do not generate Muzzle references for primitive arrays in method
body
([#&#8203;8361](DataDog/dd-trace-java#8361) -
[@&#8203;amarziali](https://github.com/amarziali))
- πŸ“– Improve dev env setup documentation for Windows
([#&#8203;8180](DataDog/dd-trace-java#8180) -
[@&#8203;lucaspimentel](https://github.com/lucaspimentel))

##### Continuous Integration Visibility

- ✨ Add support for skip-EFD tagging
([#&#8203;8487](DataDog/dd-trace-java#8487) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- πŸ› Fix an NPE in Gradle Android instrumentation
([#&#8203;8484](DataDog/dd-trace-java#8484) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Consider modified tests when applying fail-fast tests
ordering
([#&#8203;8474](DataDog/dd-trace-java#8474) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Implement tests reordering for TestNG
([#&#8203;8467](DataDog/dd-trace-java#8467) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- πŸ› Fix Gradle Launcher instrumentation to not interfere with Gradle
Test Kit
([#&#8203;8465](DataDog/dd-trace-java#8465) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🧹 Use separate TestEventHandlers per framework in CI Vis
instrumentations
([#&#8203;8451](DataDog/dd-trace-java#8451) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Remove warning log when JUnit 4 test method cannot be
retrieved
([#&#8203;8445](DataDog/dd-trace-java#8445) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- πŸ› Fix Scalatest tracing for tests that are reported asynchronously
([#&#8203;8444](DataDog/dd-trace-java#8444) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Implement attempt to fix tests
([#&#8203;8393](DataDog/dd-trace-java#8393) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Implement test disabling
([#&#8203;8377](DataDog/dd-trace-java#8377) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Update CODEOWNERS parser to not log errors on comments with
leading whitespace
([#&#8203;8349](DataDog/dd-trace-java#8349) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Request Test Management tests list
([#&#8203;8345](DataDog/dd-trace-java#8345) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Receive test management settings from CIVis settings
request
([#&#8203;8331](DataDog/dd-trace-java#8331) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Implement quarantined tests tagging
([#&#8203;8326](DataDog/dd-trace-java#8326) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Implement tests quarantining
([#&#8203;8320](DataDog/dd-trace-java#8320) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Add tag to specify if the user is setting DD_SERVICE
([#&#8203;8318](DataDog/dd-trace-java#8318) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))

##### Crash tracking

- ✨ Only fork jps when required
([#&#8203;8419](DataDog/dd-trace-java#8419) -
[@&#8203;mcculls](https://github.com/mcculls))
- πŸ› Use Java home of the crashed process to launch crash uploader
([#&#8203;8348](DataDog/dd-trace-java#8348) -
[@&#8203;jbachorik](https://github.com/jbachorik))

##### Data Streams Monitoring

- πŸ› Fix error happening when sqs message attributes are readonly
([#&#8203;8473](DataDog/dd-trace-java#8473) -
[@&#8203;vandonr](https://github.com/vandonr))
- πŸ› Fix bug on proto schema extraction
([#&#8203;8403](DataDog/dd-trace-java#8403) -
[@&#8203;vandonr](https://github.com/vandonr))
- πŸ› Fix service name overrides in consumers
([#&#8203;8387](DataDog/dd-trace-java#8387) -
[@&#8203;piochelepiotr](https://github.com/piochelepiotr))

##### Database Monitoring

- ✨ Add DBMTracePreparedStatements to tracer configuration log
([#&#8203;8508](DataDog/dd-trace-java#8508) -
[@&#8203;cecile75](https://github.com/cecile75))

##### Dynamic Instrumentation

- ✨ Look in another location for grpc service methods
([#&#8203;8468](DataDog/dd-trace-java#8468) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- πŸ› Fix Exception Replay with Lambda proxy classes
([#&#8203;8452](DataDog/dd-trace-java#8452) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Add code origin support for spring-webmvc
([#&#8203;8416](DataDog/dd-trace-java#8416) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- ✨ Add support for scanning jar from loaded class
([#&#8203;8370](DataDog/dd-trace-java#8370) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- πŸ› Disable capture of entry values
([#&#8203;8369](DataDog/dd-trace-java#8369) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- πŸ› Fix CodeOrigin for `@Trace` annotation
([#&#8203;8344](DataDog/dd-trace-java#8344) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- πŸ› Fix equals/hashCode for CodeOrigin probe
([#&#8203;8319](DataDog/dd-trace-java#8319) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Add code origin support to kafka message listeners
([#&#8203;8301](DataDog/dd-trace-java#8301) -
[@&#8203;evanchooly](https://github.com/evanchooly))

##### Metrics

- ✨ Create metric: appsec.waf.error
([#&#8203;8381](DataDog/dd-trace-java#8381) -
[@&#8203;sezen-datadog](https://github.com/sezen-datadog))
- ✨ Create metric: appsec.rasp.error
([#&#8203;8364](DataDog/dd-trace-java#8364) -
[@&#8203;sezen-datadog](https://github.com/sezen-datadog))

##### Profiling

- ✨ Bump ddprof library to 1.22.0
([#&#8203;8463](DataDog/dd-trace-java#8463) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- IBM J9 8u361 corresponds to OpenJDK 8u362 by
[@&#8203;jbachorik](https://github.com/jbachorik) in
DataDog/java-profiler#187
- Fix compatibility with musl libc 1.2.4 by
[@&#8203;jbachorik](https://github.com/jbachorik) in
DataDog/java-profiler#189
- Modify version extraction by
[@&#8203;jbachorik](https://github.com/jbachorik) in
DataDog/java-profiler#179
- Do not write null values to jvminfo event by
[@&#8203;jbachorik](https://github.com/jbachorik) in
DataDog/java-profiler#184
- Productize VMStructs-based stack walker by
[@&#8203;jbachorik](https://github.com/jbachorik) in
DataDog/java-profiler#177
- A few minor downport issues by
[@&#8203;jbachorik](https://github.com/jbachorik) in
DataDog/java-profiler#180
- Enable ASGCT by default on fairly safe J9 JDK versions by
[@&#8203;jbachorik](https://github.com/jbachorik) in
DataDog/java-profiler#181
- πŸ› Exclude OrderedThreadPoolExecutor from queue-time measurements
([#&#8203;8456](DataDog/dd-trace-java#8456) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- ✨ Record JVM info on JVMs without JFR
([#&#8203;8431](DataDog/dd-trace-java#8431) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- πŸ› Actually use CleanupTask in TempLocationManager
([#&#8203;8420](DataDog/dd-trace-java#8420) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨ Only fork jps when required
([#&#8203;8419](DataDog/dd-trace-java#8419) -
[@&#8203;mcculls](https://github.com/mcculls))
- πŸ› Adjust JFR checks for J9
([#&#8203;8405](DataDog/dd-trace-java#8405) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- 🧹 Disable smap RSS parsing by default
([#&#8203;8342](DataDog/dd-trace-java#8342) -
[@&#8203;MattAlp](https://github.com/MattAlp))

##### Telemetry

- πŸ› Add support for JBoss jar:file format to DependencyResolver
([#&#8203;8428](DataDog/dd-trace-java#8428) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Update metrics: appsec.waf.requests
([#&#8203;8353](DataDog/dd-trace-java#8353) -
[@&#8203;Mariovido](https://github.com/Mariovido))

##### Trace context propagation

- ✨ Introduce tracing propagator
([#&#8203;8313](DataDog/dd-trace-java#8313) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))

##### Tracer core

- πŸ› Fix Stable Config telemetry source names
([#&#8203;8460](DataDog/dd-trace-java#8460) -
[@&#8203;BaptisteFoy](https://github.com/BaptisteFoy))
- ✨ Probe trace endpoints with a valid payload of empty arrays
([#&#8203;8414](DataDog/dd-trace-java#8414) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨ Add 1 minute fail-safe to JUL/JMX class-loading callback
([#&#8203;8399](DataDog/dd-trace-java#8399) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨ Migrate DSM injection calls to context-first APIs
([#&#8203;8383](DataDog/dd-trace-java#8383) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- 🧹 Move continuation capture methods from scope to tracer
([#&#8203;8371](DataDog/dd-trace-java#8371) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨ Migrate context extraction calls to context-first APIs
([#&#8203;8368](DataDog/dd-trace-java#8368) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- 🧹 Migrate context injection calls to context-first APIs
([#&#8203;8358](DataDog/dd-trace-java#8358) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- πŸ’‘ Support reading configurations from files
([#&#8203;8338](DataDog/dd-trace-java#8338) -
[@&#8203;mtoffl01](https://github.com/mtoffl01))
- πŸ’‘ Implementation of BaggagePropagator and BaggageContext
([#&#8203;8330](DataDog/dd-trace-java#8330) -
[@&#8203;mhlidd](https://github.com/mhlidd))
- 🧹 Combine continuation implementations into one which supports
multiple activations
([#&#8203;8324](DataDog/dd-trace-java#8324) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨ Introduce tracing propagator
([#&#8203;8313](DataDog/dd-trace-java#8313) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨ Remove old context propagation API
([#&#8203;8271](DataDog/dd-trace-java#8271) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))

##### Instrumentations

##### AWS Lambda instrumentation

- πŸ› Send error message and stack to Lambda extension
([#&#8203;8417](DataDog/dd-trace-java#8417) -
[@&#8203;nhulston](https://github.com/nhulston))

##### AWS SDK instrumentation

- πŸ› Fix error happening when sqs message attributes are readonly
([#&#8203;8473](DataDog/dd-trace-java#8473) -
[@&#8203;vandonr](https://github.com/vandonr))
- πŸ’‘ Inject trace context into AWS Step Functions input
([#&#8203;7585](DataDog/dd-trace-java#7585) -
[@&#8203;DylanLovesCoffee](https://github.com/DylanLovesCoffee))

##### Core Java language instrumentation

- ✨ Look in another location for grpc service methods
([#&#8203;8468](DataDog/dd-trace-java#8468) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- ✨ Add code origin support for spring-webmvc
([#&#8203;8416](DataDog/dd-trace-java#8416) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- πŸ’‘ Implementation of BaggagePropagator and BaggageContext
([#&#8203;8330](DataDog/dd-trace-java#8330) -
[@&#8203;mhlidd](https://github.com/mhlidd))
- ✨ Add code origin support to kafka message listeners
([#&#8203;8301](DataDog/dd-trace-java#8301) -
[@&#8203;evanchooly](https://github.com/evanchooly))

##### gRPC instrumentation

- ✨ Look in another location for grpc service methods
([#&#8203;8468](DataDog/dd-trace-java#8468) -
[@&#8203;evanchooly](https://github.com/evanchooly))

##### Kafka instrumentation

- ✨ Add messaging.destination.name tag to kafka integrations
([#&#8203;8366](DataDog/dd-trace-java#8366) -
[@&#8203;rarguelloF](https://github.com/rarguelloF))

##### Protocol Buffer instrumentation

- πŸ› Fix bug on proto schema extraction
([#&#8203;8403](DataDog/dd-trace-java#8403) -
[@&#8203;vandonr](https://github.com/vandonr))

</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**: Never, 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: 108a0f86aa59ab4c938cbac0688dd4c19cb301fa
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