Commit Graph

2393 Commits

Author SHA1 Message Date
Mateusz Rzeszutek fadd29fa90
Fix build (merge conflict) (#7559)
Resolves #7558
2023-01-12 08:12:44 -08:00
Mateusz Rzeszutek fb5cf9fd97
Support Spring JMS 6.0 (#7438)
Part of #7203

The instrumentation is 100% copy-pasted, tests are rewritten from
scratch in Java because of way too many class name changes.

Depends on
https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/7418

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2023-01-12 04:47:45 +00:00
Trask Stalnaker 09b63d2294
Use new reactor contextWrite when available (from reactor 3.4.0) (#7538)
Related to #7107 and #7202

Support WebFlux 6. 

Supporting reactor 3.5 seems pretty straightforward, the
`subscriberContext()` was deprecated in 3.4 in favor of
`contextWrite()`. In 3.5, `subscriberContext()` was removed.

This PR doesn't bump `latestDepTestLibrary` to 3.5 yet because there are
a couple of tests that succeed in 3.4 using `contextWrite()` but fail in
3.5 using `contextWrite()`.

My proposal is to review/merge this PR, and then I can ping our resident
reactor experts to see if they have thoughts on the failing tests in
3.5.
2023-01-11 20:26:12 -08:00
dependabot[bot] f335861136
Bump errorProneVersion from 2.17.0 to 2.18.0 (#7532)
Bumps `errorProneVersion` from 2.17.0 to 2.18.0.
Updates `error_prone_annotations` from 2.17.0 to 2.18.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/google/error-prone/releases">error_prone_annotations's
releases</a>.</em></p>
<blockquote>
<h2>Error Prone 2.18.0</h2>
<p>New Checkers:</p>
<ul>
<li><a
href="https://errorprone.info/bugpattern/InjectOnBugCheckers"><code>InjectOnBugCheckers</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/LabelledBreakTarget"><code>LabelledBreakTarget</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/UnusedLabel"><code>UnusedLabel</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/YodaCondition"><code>YodaCondition</code></a></li>
</ul>
<p>Fixes issues: <a
href="https://github-redirect.dependabot.com/google/error-prone/issues/1650">#1650</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/2706">#2706</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3404">#3404</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3493">#3493</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3504">#3504</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3519">#3519</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3579">#3579</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3610">#3610</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3632">#3632</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3638">#3638</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3645">#3645</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3646">#3646</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3652">#3652</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3690">#3690</a></p>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/google/error-prone/compare/v2.17.0...v2.18.0">https://github.com/google/error-prone/compare/v2.17.0...v2.18.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="34730decfe"><code>34730de</code></a>
Release Error Prone 2.18.0</li>
<li><a
href="ee1e7778d3"><code>ee1e777</code></a>
Remove <code>DoNoCall</code> flags for checking <code>Thread.run</code>
and various <code>getClass</code> meth...</li>
<li><a
href="bb9ede9f25"><code>bb9ede9</code></a>
Delete dependabot.yml</li>
<li><a
href="7f459e14cd"><code>7f459e1</code></a>
Refaster: support method invocation type argument inlining</li>
<li><a
href="a57309b018"><code>a57309b</code></a>
Add a check to reverse Yoda conditions.</li>
<li><a
href="181f9918bc"><code>181f991</code></a>
Use <code>ASTHelpers.enclosingClass</code>.</li>
<li><a
href="360ed99da2"><code>360ed99</code></a>
Don't generate a &quot;Suppression&quot; section that recommends
`@SuppressWarnings(&quot;Ch...</li>
<li><a
href="c06c7b8b6e"><code>c06c7b8</code></a>
Look for infinite recursion in the first statement of multi-statement
methods.</li>
<li><a
href="0f5753f67b"><code>0f5753f</code></a>
Reverse Yoda conditions in EP.</li>
<li><a
href="f36a502b5f"><code>f36a502</code></a>
Make MemoizeConstantVisitorStateLookups check suppressible</li>
<li>Additional commits viewable in <a
href="https://github.com/google/error-prone/compare/v2.17.0...v2.18.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `error_prone_core` from 2.17.0 to 2.18.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/google/error-prone/releases">error_prone_core's
releases</a>.</em></p>
<blockquote>
<h2>Error Prone 2.18.0</h2>
<p>New Checkers:</p>
<ul>
<li><a
href="https://errorprone.info/bugpattern/InjectOnBugCheckers"><code>InjectOnBugCheckers</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/LabelledBreakTarget"><code>LabelledBreakTarget</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/UnusedLabel"><code>UnusedLabel</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/YodaCondition"><code>YodaCondition</code></a></li>
</ul>
<p>Fixes issues: <a
href="https://github-redirect.dependabot.com/google/error-prone/issues/1650">#1650</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/2706">#2706</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3404">#3404</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3493">#3493</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3504">#3504</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3519">#3519</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3579">#3579</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3610">#3610</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3632">#3632</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3638">#3638</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3645">#3645</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3646">#3646</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3652">#3652</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3690">#3690</a></p>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/google/error-prone/compare/v2.17.0...v2.18.0">https://github.com/google/error-prone/compare/v2.17.0...v2.18.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="34730decfe"><code>34730de</code></a>
Release Error Prone 2.18.0</li>
<li><a
href="ee1e7778d3"><code>ee1e777</code></a>
Remove <code>DoNoCall</code> flags for checking <code>Thread.run</code>
and various <code>getClass</code> meth...</li>
<li><a
href="bb9ede9f25"><code>bb9ede9</code></a>
Delete dependabot.yml</li>
<li><a
href="7f459e14cd"><code>7f459e1</code></a>
Refaster: support method invocation type argument inlining</li>
<li><a
href="a57309b018"><code>a57309b</code></a>
Add a check to reverse Yoda conditions.</li>
<li><a
href="181f9918bc"><code>181f991</code></a>
Use <code>ASTHelpers.enclosingClass</code>.</li>
<li><a
href="360ed99da2"><code>360ed99</code></a>
Don't generate a &quot;Suppression&quot; section that recommends
`@SuppressWarnings(&quot;Ch...</li>
<li><a
href="c06c7b8b6e"><code>c06c7b8</code></a>
Look for infinite recursion in the first statement of multi-statement
methods.</li>
<li><a
href="0f5753f67b"><code>0f5753f</code></a>
Reverse Yoda conditions in EP.</li>
<li><a
href="f36a502b5f"><code>f36a502</code></a>
Make MemoizeConstantVisitorStateLookups check suppressible</li>
<li>Additional commits viewable in <a
href="https://github.com/google/error-prone/compare/v2.17.0...v2.18.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `error_prone_test_helpers` from 2.17.0 to 2.18.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/google/error-prone/releases">error_prone_test_helpers's
releases</a>.</em></p>
<blockquote>
<h2>Error Prone 2.18.0</h2>
<p>New Checkers:</p>
<ul>
<li><a
href="https://errorprone.info/bugpattern/InjectOnBugCheckers"><code>InjectOnBugCheckers</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/LabelledBreakTarget"><code>LabelledBreakTarget</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/UnusedLabel"><code>UnusedLabel</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/YodaCondition"><code>YodaCondition</code></a></li>
</ul>
<p>Fixes issues: <a
href="https://github-redirect.dependabot.com/google/error-prone/issues/1650">#1650</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/2706">#2706</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3404">#3404</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3493">#3493</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3504">#3504</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3519">#3519</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3579">#3579</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3610">#3610</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3632">#3632</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3638">#3638</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3645">#3645</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3646">#3646</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3652">#3652</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3690">#3690</a></p>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/google/error-prone/compare/v2.17.0...v2.18.0">https://github.com/google/error-prone/compare/v2.17.0...v2.18.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="34730decfe"><code>34730de</code></a>
Release Error Prone 2.18.0</li>
<li><a
href="ee1e7778d3"><code>ee1e777</code></a>
Remove <code>DoNoCall</code> flags for checking <code>Thread.run</code>
and various <code>getClass</code> meth...</li>
<li><a
href="bb9ede9f25"><code>bb9ede9</code></a>
Delete dependabot.yml</li>
<li><a
href="7f459e14cd"><code>7f459e1</code></a>
Refaster: support method invocation type argument inlining</li>
<li><a
href="a57309b018"><code>a57309b</code></a>
Add a check to reverse Yoda conditions.</li>
<li><a
href="181f9918bc"><code>181f991</code></a>
Use <code>ASTHelpers.enclosingClass</code>.</li>
<li><a
href="360ed99da2"><code>360ed99</code></a>
Don't generate a &quot;Suppression&quot; section that recommends
`@SuppressWarnings(&quot;Ch...</li>
<li><a
href="c06c7b8b6e"><code>c06c7b8</code></a>
Look for infinite recursion in the first statement of multi-statement
methods.</li>
<li><a
href="0f5753f67b"><code>0f5753f</code></a>
Reverse Yoda conditions in EP.</li>
<li><a
href="f36a502b5f"><code>f36a502</code></a>
Make MemoizeConstantVisitorStateLookups check suppressible</li>
<li>Additional commits viewable in <a
href="https://github.com/google/error-prone/compare/v2.17.0...v2.18.0">compare
view</a></li>
</ul>
</details>
<br />


You can trigger a rebase of this PR by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>
2023-01-11 20:25:46 -08:00
Mateusz Rzeszutek cd470080b7
Support spring-data 3.0 (test only) (#7376)
Part of #7203
2023-01-11 20:10:38 -08:00
Mateusz Rzeszutek 6603b5d836
Instrument JMS 3.0 (Jakarta) (#7418)
There were so many changes in the tests that extracting a base class
wouldn't really improve the readability; so I just reimplemented them in
Java.
The instrumentation itself is pretty much a copy-paste of the `jms-1.1`
instrumentation, with `s/javax/jakarta/` applied.
2023-01-11 19:54:42 -08:00
Mateusz Rzeszutek ca310b4ddb
Support Spring Web MVC in library instrumentation (#7552)
Part of
https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/7312

This is pretty much a copy of the `spring-webvmc-5.3:library` module
with `s/javax/jakarta/` applied. I'm planning on removing the 5.3
instrumentation after #7312 is done.
2023-01-11 17:22:55 -08:00
Mateusz Rzeszutek 30de9ff266
Disable internal TaskScheduler spans in Spring Kafka instrumentation (#7553)
Resolves #7511

I used the same pattern we already have for suppressing the wrapping of
the Kafka consumer records lists.
2023-01-11 17:19:43 -08:00
Trask Stalnaker c36b2a156f
Fix muzzle CI (#7547) 2023-01-10 16:40:42 -08:00
jack-berg f0bd7c0504
Make OpenTelemetryAppender.Builder public (#7521)
Allows for programatic configuration as discussed in this [CNCF slack
thread](https://cloud-native.slack.com/archives/C01N5UCHTEH/p1673028580643009).
2023-01-09 09:14:39 -08:00
Lauri Tulmin d0bfc5be0f
Convert vaadin tests to java (#7444)
Part of
https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/7195
Resolves
https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/7417
Vaadin tests often break with a new version of vaadin. To improve this
tests were change to assert only the traces and spans that are common in
all the versions.
2023-01-03 12:46:48 -08:00
dependabot[bot] 0a045e3a00
Bump errorProneVersion from 2.16 to 2.17.0 (#7489)
Bumps `errorProneVersion` from 2.16 to 2.17.0.
Updates `error_prone_annotations` from 2.16 to 2.17.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/google/error-prone/releases">error_prone_annotations's
releases</a>.</em></p>
<blockquote>
<h2>Error Prone 2.17.0</h2>
<p>New Checkers:</p>
<ul>
<li><a
href="https://errorprone.info/bugpattern/AvoidObjectArrays"><code>AvoidObjectArrays</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/Finalize"><code>Finalize</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/IgnoredPureGetter"><code>IgnoredPureGetter</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/ProtoFieldNullComparison"><code>ImpossibleNullComparison</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/MathAbsoluteNegative"><code>MathAbsoluteNegative</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/NewFileSystem"><code>NewFileSystem</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/StatementSwitchToExpressionSwitch"><code>StatementSwitchToExpressionSwitch</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/UnqualifiedYield"><code>UnqualifiedYield</code></a></li>
</ul>
<p>Fixed issues: <a
href="https://github-redirect.dependabot.com/google/error-prone/issues/2321">#2321</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3144">#3144</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3297">#3297</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3428">#3428</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3437">#3437</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3462">#3462</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3482">#3482</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3494">#3494</a></p>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/google/error-prone/compare/v2.16...v2.17.0">https://github.com/google/error-prone/compare/v2.16...v2.17.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="27de40ba60"><code>27de40b</code></a>
Release Error Prone 2.17.0</li>
<li><a
href="bcf4dcf764"><code>bcf4dcf</code></a>
Optimize checks that report exactly the same fix in multiple
diagnostics, lik...</li>
<li><a
href="8ddb7cbb05"><code>8ddb7cb</code></a>
Record Error Prone initialization time</li>
<li><a
href="1d23141bd7"><code>1d23141</code></a>
Do the expensive bit last in UnusedMethod.</li>
<li><a
href="e3602572b0"><code>e360257</code></a>
Fix yet another NonCanonicalType crash</li>
<li><a
href="5768290a15"><code>5768290</code></a>
Make UnusedMethod recognize com.google.acai annotations,
com.google.caliper.B...</li>
<li><a
href="7340bdf01d"><code>7340bdf</code></a>
Audit EP checks for argumentless mock().</li>
<li><a
href="b92c9b1b55"><code>b92c9b1</code></a>
Rip out GuardedBy:CheckMemberReferences.</li>
<li><a
href="63fb30be3f"><code>63fb30b</code></a>
Have InvalidLink provide a hint about erasure if it sees &lt; in an
invalid meth...</li>
<li><a
href="4a5fd7bd5a"><code>4a5fd7b</code></a>
Suppress FieldCanBeLocal based on unused prefices.</li>
<li>Additional commits viewable in <a
href="https://github.com/google/error-prone/compare/v2.16...v2.17.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `error_prone_core` from 2.16 to 2.17.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/google/error-prone/releases">error_prone_core's
releases</a>.</em></p>
<blockquote>
<h2>Error Prone 2.17.0</h2>
<p>New Checkers:</p>
<ul>
<li><a
href="https://errorprone.info/bugpattern/AvoidObjectArrays"><code>AvoidObjectArrays</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/Finalize"><code>Finalize</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/IgnoredPureGetter"><code>IgnoredPureGetter</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/ProtoFieldNullComparison"><code>ImpossibleNullComparison</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/MathAbsoluteNegative"><code>MathAbsoluteNegative</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/NewFileSystem"><code>NewFileSystem</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/StatementSwitchToExpressionSwitch"><code>StatementSwitchToExpressionSwitch</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/UnqualifiedYield"><code>UnqualifiedYield</code></a></li>
</ul>
<p>Fixed issues: <a
href="https://github-redirect.dependabot.com/google/error-prone/issues/2321">#2321</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3144">#3144</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3297">#3297</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3428">#3428</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3437">#3437</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3462">#3462</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3482">#3482</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3494">#3494</a></p>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/google/error-prone/compare/v2.16...v2.17.0">https://github.com/google/error-prone/compare/v2.16...v2.17.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="27de40ba60"><code>27de40b</code></a>
Release Error Prone 2.17.0</li>
<li><a
href="bcf4dcf764"><code>bcf4dcf</code></a>
Optimize checks that report exactly the same fix in multiple
diagnostics, lik...</li>
<li><a
href="8ddb7cbb05"><code>8ddb7cb</code></a>
Record Error Prone initialization time</li>
<li><a
href="1d23141bd7"><code>1d23141</code></a>
Do the expensive bit last in UnusedMethod.</li>
<li><a
href="e3602572b0"><code>e360257</code></a>
Fix yet another NonCanonicalType crash</li>
<li><a
href="5768290a15"><code>5768290</code></a>
Make UnusedMethod recognize com.google.acai annotations,
com.google.caliper.B...</li>
<li><a
href="7340bdf01d"><code>7340bdf</code></a>
Audit EP checks for argumentless mock().</li>
<li><a
href="b92c9b1b55"><code>b92c9b1</code></a>
Rip out GuardedBy:CheckMemberReferences.</li>
<li><a
href="63fb30be3f"><code>63fb30b</code></a>
Have InvalidLink provide a hint about erasure if it sees &lt; in an
invalid meth...</li>
<li><a
href="4a5fd7bd5a"><code>4a5fd7b</code></a>
Suppress FieldCanBeLocal based on unused prefices.</li>
<li>Additional commits viewable in <a
href="https://github.com/google/error-prone/compare/v2.16...v2.17.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `error_prone_test_helpers` from 2.16 to 2.17.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/google/error-prone/releases">error_prone_test_helpers's
releases</a>.</em></p>
<blockquote>
<h2>Error Prone 2.17.0</h2>
<p>New Checkers:</p>
<ul>
<li><a
href="https://errorprone.info/bugpattern/AvoidObjectArrays"><code>AvoidObjectArrays</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/Finalize"><code>Finalize</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/IgnoredPureGetter"><code>IgnoredPureGetter</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/ProtoFieldNullComparison"><code>ImpossibleNullComparison</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/MathAbsoluteNegative"><code>MathAbsoluteNegative</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/NewFileSystem"><code>NewFileSystem</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/StatementSwitchToExpressionSwitch"><code>StatementSwitchToExpressionSwitch</code></a></li>
<li><a
href="https://errorprone.info/bugpattern/UnqualifiedYield"><code>UnqualifiedYield</code></a></li>
</ul>
<p>Fixed issues: <a
href="https://github-redirect.dependabot.com/google/error-prone/issues/2321">#2321</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3144">#3144</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3297">#3297</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3428">#3428</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3437">#3437</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3462">#3462</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3482">#3482</a>,
<a
href="https://github-redirect.dependabot.com/google/error-prone/issues/3494">#3494</a></p>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/google/error-prone/compare/v2.16...v2.17.0">https://github.com/google/error-prone/compare/v2.16...v2.17.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="27de40ba60"><code>27de40b</code></a>
Release Error Prone 2.17.0</li>
<li><a
href="bcf4dcf764"><code>bcf4dcf</code></a>
Optimize checks that report exactly the same fix in multiple
diagnostics, lik...</li>
<li><a
href="8ddb7cbb05"><code>8ddb7cb</code></a>
Record Error Prone initialization time</li>
<li><a
href="1d23141bd7"><code>1d23141</code></a>
Do the expensive bit last in UnusedMethod.</li>
<li><a
href="e3602572b0"><code>e360257</code></a>
Fix yet another NonCanonicalType crash</li>
<li><a
href="5768290a15"><code>5768290</code></a>
Make UnusedMethod recognize com.google.acai annotations,
com.google.caliper.B...</li>
<li><a
href="7340bdf01d"><code>7340bdf</code></a>
Audit EP checks for argumentless mock().</li>
<li><a
href="b92c9b1b55"><code>b92c9b1</code></a>
Rip out GuardedBy:CheckMemberReferences.</li>
<li><a
href="63fb30be3f"><code>63fb30b</code></a>
Have InvalidLink provide a hint about erasure if it sees &lt; in an
invalid meth...</li>
<li><a
href="4a5fd7bd5a"><code>4a5fd7b</code></a>
Suppress FieldCanBeLocal based on unused prefices.</li>
<li>Additional commits viewable in <a
href="https://github.com/google/error-prone/compare/v2.16...v2.17.0">compare
view</a></li>
</ul>
</details>
<br />


You can trigger a rebase of this PR by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>
2023-01-03 11:49:41 -08:00
Mateusz Rzeszutek d4d623d272
Fix NPE in servlet AsyncListener on OpenLiberty (#7498)
Fixes #7449
2023-01-03 11:45:21 -08:00
dependabot[bot] 789b66d455
Bump spotless-plugin-gradle from 6.12.0 to 6.12.1 (#7500)
Bumps [spotless-plugin-gradle](https://github.com/diffplug/spotless)
from 6.12.0 to 6.12.1.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="718a504c12"><code>718a504</code></a>
Published gradle/6.12.1</li>
<li><a
href="c13acee213"><code>c13acee</code></a>
Published lib/2.31.1</li>
<li><a
href="552aabf876"><code>552aabf</code></a>
fix(deps): update dependency com.facebook:ktfmt to v0.42 (<a
href="https://github-redirect.dependabot.com/diffplug/spotless/issues/1421">#1421</a>)</li>
<li><a
href="4063e9f6d1"><code>4063e9f</code></a>
Add support for KtLint 0.48.0 (<a
href="https://github-redirect.dependabot.com/diffplug/spotless/issues/1432">#1432</a>
fixes <a
href="https://github-redirect.dependabot.com/diffplug/spotless/issues/1430">#1430</a>)</li>
<li><a
href="062e835846"><code>062e835</code></a>
Bump changelogs.</li>
<li><a
href="8f7e00594d"><code>8f7e005</code></a>
spotlessApply</li>
<li><a
href="9a8ccae9ec"><code>9a8ccae</code></a>
Bump default ktfmt 0.41 -&gt; 0.42</li>
<li><a
href="fb4277d2b1"><code>fb4277d</code></a>
Merge branch 'main-ktlint-0.48.0' into renovate/ver_ktfmt</li>
<li><a
href="b44d70d00a"><code>b44d70d</code></a>
Move changelog entries to the correct release.</li>
<li><a
href="b3d8e89002"><code>b3d8e89</code></a>
spotlessApply for 2023</li>
<li>Additional commits viewable in <a
href="https://github.com/diffplug/spotless/compare/gradle/6.12.0...gradle/6.12.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=com.diffplug.spotless:spotless-plugin-gradle&package-manager=gradle&previous-version=6.12.0&new-version=6.12.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

You can trigger a rebase of this PR by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>
2023-01-03 09:58:06 +00:00
Anurag Agarwal 390803d3e7
GRPC: Adds peer socket address when the client call is ready (#7451)
Closes
https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/7445
2023-01-02 11:01:37 +01:00
Lauri Tulmin fe540eaad2
Resource injection for class loader getResourceAsStream (#7476)
In
https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/7447
injected resource is opened with class loader getResourceAsStream. This
works only in class loaders where getResourceAsStream delegates to
getResource. This is not the case with all class loaders, for example
tomcat class loader does not do this. Because of this we also need to
instrument class loader getResourceAsStream.
2023-01-02 11:01:00 +01:00
Mateusz Rzeszutek 8c64a9e6e1
Fix class file load error when using spring-guice together with sprin… (#7447)
…g-web instrumentation

Fixes
https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/7428
2023-01-02 11:00:51 +01:00
Lauri Tulmin 983b9dddff
Limit cxf latest dep version (#7470) 2022-12-23 09:54:25 -08:00
Lauri Tulmin 3ca6b04a59
Propagate original exception through kafka wrapper (#7452)
Resolves
https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/7450
2022-12-21 09:26:57 +01:00
Lauri Tulmin e683fd9bee
Preserve original exception in jetty http client wrappers (#7455)
Same issue as in
https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/7452
2022-12-21 09:26:44 +01:00
Lauri Tulmin 1eb0477acd
Limit spring-cloud-stream version (#7442) 2022-12-17 08:18:15 -08:00
Lauri Tulmin 7b87423571
Skip muzzle for broken spring-web versions (#7435) 2022-12-15 22:02:22 +00:00
Trask Stalnaker fd027f1b9a
Fix testLatestDeps (#7431) 2022-12-15 23:43:43 +02:00
Mateusz Rzeszutek fc35d7b5b3
Muzzle: skip broken elasticsearch version (#7427)
Fixes  #7426
2022-12-15 11:45:02 +02:00
Mateusz Rzeszutek 2602cf681a
Add serlvet filter test to spring-webmvc-6.0 (#7406) 2022-12-15 09:07:42 +01:00
Peter Findeisen 5efa6408e4
Adding a reference to runtime metrics (#7407)
As suggested by @tylerbenson, adding a reference to the runtime metrics
reported by the agent.
2022-12-14 07:59:05 -08:00
Mateusz Rzeszutek 1b123cde6a
Limit vaadin last dep test version to 23.2.+ (#7416)
Fixes #7415 
Fixes #7414
2022-12-14 12:12:42 +02:00
Mateusz Rzeszutek 9e5d9623c3
Fix connection pool timeouts unit (#7404)
And add a test that actually verifies it
2022-12-13 08:19:38 -08:00
Mateusz Rzeszutek d1c0b3d47e
Do not install GC metrics when GarbageCollectionNotificationInfo is n… (#7405)
…ot available

Hopefully fix #7401
2022-12-13 08:11:51 -08:00
Trask Stalnaker c57435ff29
Change log4j MapMessage attribute names (#7397)
Changed them from standalone top-level attributes to move them under
`log4j.map_message.*` (e.g. similar to `log4j.context_data.*` and
others).

Also adds doc for log4j javaagent properties.

Also cleans up related tests.
2022-12-13 08:07:34 -08:00
Trask Stalnaker d5d4e15b13
Java util logging config doc (#7398) 2022-12-13 12:04:49 +02:00
Lauri Tulmin 17e1e22072
Correct annotation name in spring-boot-autoconfigure readme (#7394) 2022-12-13 08:40:23 +01:00
Lauri Tulmin 33c7ce927e
spring-webmvc-6.0: skip muzzle check of broken versions (#7395)
https://github.com/open-telemetry/opentelemetry-java-instrumentation/actions/runs/3679126152/jobs/6223205591
copied the excludes from spring-webmvc-3.1
2022-12-12 22:42:56 +00:00
Trask Stalnaker 2f76931e2f
Add logback configuration doc (#7392)
See #7389

Co-authored-by: Fabrizio Ferri-Benedetti <fferribenedetti@splunk.com>
2022-12-12 13:55:23 -08:00
Lauri Tulmin f3a21e86f5
Allow disabling muzzle checks for specific methods (#7289)
Resolves
https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/2556

https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/7265
made me wonder whether it would help when we could sometimes skip muzzle
checks.

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-12-12 21:18:17 +00:00
Lauri Tulmin d6ff48121f
Agent context storage wrapper should not override other wrappers (#7355)
Resolves
https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/7344

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-12-12 10:22:41 -08:00
Mateusz Rzeszutek d971e26501
Extract a common JMS module before implementing Jakarta JMS instrumen… (#7377)
…tation

We need to instrument Jakarta JMS (3.0) before instrumenting Spring JMS
6.0

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-12-12 10:22:00 -08:00
Mateusz Rzeszutek 59b7513cd0
Instrument spring-web 6 & spring-webmvc 6 (#7366)
Part of #7203

This PR is mostly copy-paste and working around the differences,
conceptually the new instrumentation is the same as the old one
2022-12-12 09:31:08 -08:00
Trask Stalnaker 7c39e5429d
Fix NullPointerException when uri is null (#7387) 2022-12-12 09:19:12 +01:00
jason plumb 264edd98fc
More flexible cgroupv2 container id parsing (and podman support) (#7361)
This is based on a conversation in [opentelemetry-go
#3508](https://github.com/open-telemetry/opentelemetry-go/pull/3508) and
to be more consistent with [the js cgroupv2 parser
impl](f0a93685cf/detectors/node/opentelemetry-resource-detector-container/src/detectors/ContainerDetector.ts (L68)).

Unsurprisingly, podman does not include the word `docker` in the
`mountinfo` file. As a result, the container id parsing would fail from
inside a podman container. This fixes that up to be more compatible.
2022-12-09 17:14:38 -08:00
Mateusz Rzeszutek 4856377642
Support spring-scheduling 6.0 (test only) (#7375)
Part of #7203
2022-12-09 17:13:54 -08:00
Mateusz Rzeszutek ebb0141032
Populate `messaging.kafka.message.offset` in all kafka instrumentations (#7374) 2022-12-09 17:13:31 -08:00
Peter Findeisen 5c9a9d6020
JMXMetricInsight should log nothing at INFO level (#7367)
if not configured to collect any metrics
2022-12-09 10:12:45 +01:00
Lauri Tulmin 278f797ae7
Add instrumentation for opentelemetry-extension-kotlin (#7341)
Hopefully resolves
https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/7124
Our kotlin coroutine instrumentation relies on a shaded copy of
`opentelemetry-extension-kotlin`. This doesn't work well when
application also uses `opentelemetry-extension-kotlin`, because the
shaded and unshaded copy store opentelemery context under different key.
This pr attempts to fix this by instrumenting
`opentelemetry-extension-kotlin` provided by the application so that it
would delegate to the one shaded inside the agent.

Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>
2022-12-05 21:06:04 -08:00
Mateusz Rzeszutek 17b3fdb04a
Make preparations for Spring Web & WebMVC 6 instrumentations (#7343)
Just moving things around, extracting parent dir for `spring-web` and
`spring-webmvc`
2022-12-01 13:08:32 +01:00
Trask Stalnaker bbcd3d1cb4
Update gwt rpc span from INTERNAL to SERVER (#7342)
Now that we are allowing/support nested SERVER spans.

cc @lmolkova
2022-11-30 11:29:00 -08:00
Trask Stalnaker 238042afca
Remove scala from dependency management (#7296)
Will close #7216 after this is merged and that PR is rebased.

I tested and it does bring a few more scala versions into Intellij
without this, but scala is an odd case.
2022-11-29 07:55:35 -08:00
Mateusz Rzeszutek 69938b3f79
Support Spring Kafka 3 (#7271)
Fixes #7265

I took a look at the new Observation API, and I think that it still
makes sense to continue using the interceptors to implement this
instrumentation: they implement the OTel spec (which includes way more
attributes than the default observation convention implemented in
Spring), and cooperate with the Kafka client instrumentation and link
the receive and process spans together. And it's quite a simple change
in one of our interceptors, instead of rewriting everything.

(Draft because Spring Boot 3 hasn't released yet, and it is required to
run the tests. If we're not in a hurry this PR can wait a bit for that)
2022-11-29 12:07:57 +02:00
Michal Vavřík 6207887479
OpenTelemetryDriver don't require DriverManager for underlying drivers (#7089)
closes: #7028

For reasons explained in the linked issue, it might be handy to register
drivers directly against `OpenTelemetryDriver` rather than against
`DriverManager`. I decided to also go with static registry as drivers
are often instantiated connect pools (like Agroal) and it could be
difficult to use instance varibles. This PR adds additional `Driver`
collection where drivers can be registered. If driver is registered both
with `OpenTelemtryDriver` and `DriverManager`, drivers registered with
`OpenTelemetryDriver` are preferred.
2022-11-28 14:46:22 -08:00
Trask Stalnaker c336bf4cb1
Add test latest dep limit for struts2 (#7322) 2022-11-28 11:21:53 -08:00