Mateusz Rzeszutek
04f2e3e9e5
Bridge agent logs into application's slf4j logger ( #7339 )
...
Related discussion #7257
Resolves #3413
Resolves #5059
Resolves #6258
Resolves #7179
Adds a logging implementation that'll collect agent logs in memory until
slf4j is detected in the instrumented application; and when that happens
will dump all the logs into the application slf4j and log directly to
the application logger from that time on.
It's still in a POC state, unfortunately: while it works fine with an
app that uses & initializes slf4j directly, Spring Boot applications
actually reconfigure the logging implementation (e.g. logback) a while
after slf4j is loaded; which causes all the startup agent logs (debug
included) to be dumped with the default logback pattern.
Future work:
* ~~Make sure all logs produces by the agent are sent to loggers named
`io.opentelemetry...`
(https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/7446 )~~
DONE
* Make this work on Spring Boot
* Documentation
* Smoke test?
2023-04-04 17:29:43 +02:00
Mateusz Rzeszutek
d89932098a
Disable YodaCondition check and revert some of the changes ( #7596 )
...
Let's keep close to the SDK repo config.
I reverted some of the changes, only left those that I think make sense
anyway (e.g. comparing enums with `==`)
2023-01-17 19:44:15 -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 "Suppression" section that recommends
`@SuppressWarnings("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 "Suppression" section that recommends
`@SuppressWarnings("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 "Suppression" section that recommends
`@SuppressWarnings("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
Lauri Tulmin
2a2f7cd312
Make java.sql classes available to the agent and extensions ( #7038 )
...
Resolves
https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/7037
2022-11-03 11:42:28 -07:00
jack-berg
aeac361816
Upgrade to otel java 1.19.0 ( #6757 )
...
Working PR to capture all the changes required to update to otel java
1.19.0. The new log API force allows
`:instrumentation-appender-api-internal` and
`:instrumentation-appender-sdk-internal`, but necessitates a decent
amount of refactoring as a result.
The PR points at the `1.19.0-SNAPSHOT`, which I'll update upon
publication.
Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
Co-authored-by: Lauri Tulmin <ltulmin@splunk.com>
2022-10-12 09:19:37 -07:00
Mateusz Rzeszutek
8b2b3281fe
Encapsulate logging ( #6543 )
...
* Encapsulate actual logging implementation better
* Apply suggestions from code review
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
* code review comments
* revert to the old slf4j package name
* spotless
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-09-12 13:22:26 -07:00
Mateusz Rzeszutek
0d6f0b15d0
Update dependencies ( #6499 )
...
* Update dependencies
* Strictly pin slf4j and logback versions
* logback 1.3
* Only use slf4j 2.0.0 internally in the javaagent
* Pre-initialize slf4j provider
* Bump jackson version
* licenses
2022-09-06 13:04:30 -07:00
Mateusz Rzeszutek
08f013f9d6
Update gradle to 7.5.1 ( #6359 )
...
* Update gradle to 7.5
* Bump to 7.5.1
* gradle 7.5.1 with jdk17
* spotless
* one more --add-opens
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
Co-authored-by: Lauri Tulmin <ltulmin@splunk.com>
2022-08-12 12:03:43 +02:00
Trask Stalnaker
68a9f20eb3
Enable PrivateConstructorForUtilityClass errorprone check ( #6427 )
...
* PrivateConstructorForUtilityClass
* Advice
* More advice
* More
* More advice
* More
* Spotless
* Fix
* Fix
* Fix
* A better solution
* Revert
* More
* Fix
* Spotless
* Fix
2022-08-10 11:30:22 +03:00
Mateusz Rzeszutek
976ab9411c
Deprecate Config ( #6360 )
...
* Deprecate Config
* suppress deprecation on ConfigTest
2022-07-25 12:10:11 -07:00
Trask Stalnaker
701ed54311
Use "class loader" instead of "classloader" consistently in docs and comments ( #6236 )
...
* Use "class loader" consistently instead of classloader
* Java comments too
* Fix bad merge
2022-06-30 14:57:07 -07:00
Trask Stalnaker
c22af231bd
Add JavaagentFileHolder ( #5993 )
2022-05-10 11:03:40 +03:00
Lauri Tulmin
8beb134910
Load agent classes child first ( #5950 )
2022-04-28 08:37:09 -07:00
Mateusz Rzeszutek
7c760acea6
Move some classes out of `javaagent-instrumentation-api` ( #5841 )
...
* Move concurrent instrumentation utils out from javaagent-instrumentation-api
* Move AgentLogEmitterProvider, InstrumentedTaskClasses and OpenTelemetrySdkAccess out of javaagent-instrumentation-api
2022-04-15 12:09:28 -07:00
Lauri Tulmin
4ad44909ca
Faster type matching ( #5724 )
...
* Faster type matching
* make findLoadedClass accessible on java17
* enable jaxrs instrumentation for quarkus test
* fix websphere
* fix muzzle
* javadoc formating
* ignore classes that are know to fail to load for virtual field transforms
* add back jaxrs and jaxws annotation instrumentations
* Apply suggestions from code review
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
* fix compile error
* comments
* replace deprecated method usage
* add comment
* add an spi to get access to bootstrap proxy from muzzle module
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-04-08 10:38:50 -07:00
Mateusz Rzeszutek
519024485c
Move Cache and related classes to internal package ( #5759 )
...
* Move Cache and related classes to internal package
* fix imports
2022-04-06 18:12:11 -07:00
Lauri Tulmin
315b8162be
Delete unused class ( #5729 )
2022-04-01 11:26:13 +02:00
Mateusz Rzeszutek
7bc748a2ff
Make it possible to register multiple helper resources under the same… ( #5703 )
...
* Make it possible to register multiple helper resources under the same name
* go back to using the old property in tests after all
* code review comments
2022-03-31 11:51:46 +02:00
Mateusz Rzeszutek
b668e73e13
Convert all logging statements from slf4j to jul ( #5674 )
...
* Convert all logging statements from slf4j to jul
* code review comments
* fix tests
* Fix randomly failing test
2022-03-25 10:02:51 -07:00
Anuraag Agrawal
14372adb68
Migrate Guava tests to Java ( #5668 )
...
* Migrate Guava tests to Java
* Update instrumentation/guava-10.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/guava/ListenableFutureTest.java
Co-authored-by: Lauri Tulmin <tulmin@gmail.com>
* Workaround inline mock issue
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
Co-authored-by: Lauri Tulmin <tulmin@gmail.com>
2022-03-24 14:14:09 +09:00
Mateusz Rzeszutek
f2587ba248
Apply micrometer instrumentation to spring-boot-actuator apps ( #5666 )
...
* Apply micrometer instrumentation to spring-boot-actuator apps
* fix a bug
* code review comments
2022-03-23 10:25:51 -07:00
Trask Stalnaker
531f18f56b
Fix possible deadlock ( #5585 )
...
* Fix possible deadlock
* don't break java 8
* try @laurit's idea
* Update javaagent-bootstrap/src/main/java/io/opentelemetry/javaagent/bootstrap/AgentClassLoader.java
Co-authored-by: Lauri Tulmin <tulmin@gmail.com>
Co-authored-by: Lauri Tulmin <tulmin@gmail.com>
2022-03-17 12:39:56 +02:00
Lauri Tulmin
c461d22d83
Define helper classes in loadClass ( #5528 )
...
* Define helper classes in loadClass similarly to regular classes
* fix test
* spotless
* address review comments
2022-03-09 09:12:25 -08:00
Lauri Tulmin
b8a2d0a502
Load jdk http server classes from platform class loader ( #5408 )
2022-02-19 11:53:49 -08:00
Lauri Tulmin
fbf00761cc
Use VirtualField for associating netty listener with wrapper ( #5282 )
...
* Use VirtualField for associating netty listener with wrapper
* Move ignoring lambas for injected classes to LambdaTransformer
2022-01-31 14:45:12 -08:00
Lauri Tulmin
f2a2786759
Recover from duplicate class definition errors ( #5185 )
...
* Recover from duplicate class definition errors
* fix hotspot8
* Suppress dupicate class definiton errors only when helper classes were injected
* exit define class context when there is an exception, update pseudocode in comment
2022-01-25 09:37:37 -08:00
Lauri Tulmin
c76345a973
Always set parent of agent class loader to bootstrap class loader ( #5169 )
...
* Always set parent of agent class loader to bootstrap class loader
* remove parent class loader argument
2022-01-18 19:36:28 -08:00
Anuraag Agrawal
f6bcd76219
Update errorprone ( #5016 )
...
* Update errorprone
* gwt
* Remove unnecessary final
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-01-06 14:21:56 -08:00
Lauri Tulmin
c45b4ea5be
Fix redefinition failure on openj9 ( #5009 )
...
* Fix redefinition failure on openj9
* isntead of remembering the list of interfaces the class has remember whether it has any of the virutal field marker interfaces
* address review comment
* ensure virtual field detection works when internal-reflection instrumentation is disabled
2022-01-06 08:54:32 -08:00
Lauri Tulmin
3f3180841e
Avoid crashing on early 1.8 openjdk vms ( #4789 )
2021-12-05 13:37:01 +02:00
Lauri Tulmin
1e371377a1
Fix build ( #4743 )
...
* Fix build
* avoid npe
2021-11-30 14:07:07 +02:00
Lauri Tulmin
10288c6f25
Work around jvm crash on early 1.8 ( #4345 )
...
* Work around jvm crash on early 1.8
* skip retransform if class was already transformed during load
* fix imports after rebase
* add test
* disable test on windows
2021-11-29 22:47:10 -08:00
Lauri Tulmin
92f83f10f0
Remove virtual field interfaces from reflection results ( #4722 )
...
* Remove virtual field interfaces from reflection results
* fix java8 and openj9
2021-11-29 12:09:28 -08:00
Nikita Salnikov-Tarnovski
821a4b870b
Drop instrumentation-api-caching module and move weak cache implementation to instrumentation-api ( #4667 )
...
* Drop instrumentation-api-caching module and move weak cache implementation to instrumentation-api
* Some test fixes
* Some cleanup
* Temporary workaround for using weak values in FutureListenerWrappers
* Spotless
* Update ClassNames and SpanNames
* Compilation and comment
* Add bounded cache and clean interface
* Polish
* Add comment
* Vendor ConcurrentLinkedHashMap in
* Let errorprone ignore vendored CLHM for now
* Keep license in java files too
* Convert Netty wrapper cache to VirtualField
* Work around lambda instrumentation failure
Ideally we would ignore instrumenting helper classes...
* Revert "Work around lambda instrumentation failure"
This reverts commit 6d63815b44
.
* Revert "Convert Netty wrapper cache to VirtualField"
This reverts commit dac1522a3f
.
* Handle cleared weak values
* Fix comment
* Delete instrumentation-api-caching
* Copy in weak-lock-free
* Remove caffeine remnants
* Fix checkstyle
* Rename BoundedCache to MapBackedCached
* Remove duplicate LICENSE
* Remove outdated comment
* Sync with SDK copy of weaklockfree
* Enable checkstyle:off comment
* Re-generate license report
* Move NOTICE file to package-info.java
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-11-24 09:05:12 -08:00
Lauri Tulmin
2d0aa19179
Add missing java.util.logging.Logger methods to PatchLogger ( #4540 )
...
* Add missing java.util.logging.Logger methods to PatchLogger
* spotless
2021-10-28 17:59:21 -07:00
Trask Stalnaker
e9022da102
Remove unshaded javax.annotation classes from bootstrap class loader ( #4454 )
...
* Fix shading
* Revert "Fix shading"
This reverts commit 2aad3cfe21
.
* Make javax.annotations compileOnly
* Replace checker GuardedBy with otel api internal GuardedBy
* Fix build
* Fix errorprone failures
* Remove extra newline
* Move internal GuardedBy to instrumentation-api
* empty commit
* empty commit
2021-10-21 14:47:50 -07:00
Martin
6d9e3618d3
rename `newBuilder()` to `builder()` ( #4407 )
...
* rename `newBuilder()` to `builder()`
* code format
2021-10-18 10:00:49 -07:00
Martin
ac91dc090a
Type annotation placement ( #4406 )
...
* switch annotation `org.checkerframework.checker.nullness.qual.Nullable` to `javax.annotation.Nullable`
* code format
2021-10-17 17:38:43 -07:00
Mateusz Rzeszutek
b4984657b5
Move BootstrapPackagePrefixesHolder to javaagent-bootstrap ( #4303 )
2021-10-05 11:26:24 -07:00
Mateusz Rzeszutek
9d6fb65b41
Remove ContextStore/InstrumentationContext mentions from internal age… ( #4267 )
...
* Remove ContextStore/InstrumentationContext mentions from internal agent classes
* Fix internal-reflection module
2021-10-04 09:24:25 -07:00
Lauri Tulmin
559cdcbbee
Transform lambda classes ( #4182 )
...
* Transform lambda classes
* improve comment
2021-09-24 09:52:15 -07:00
Lauri Tulmin
0f3d0cb05b
Generate our own sun.misc.Unsafe if it is not available ( #4124 )
...
* Generate our own sun.misc.Unsafe if it is not available
* skip generating invokeCleaner method
* grpc isn't shaded so setting system property doesn't affect only our bundled copy
* generate invokeCleaner when it is present in internal unsafe
2021-09-22 20:18:20 -07:00
Matthew Ho
6967484a97
Update groovy import order to match default IntelliJ ( #1708 ) ( #4047 )
...
* Update groovy import order to match default IntelliJ (#1708 )
* organized imports for .groovy files to follow default IntelliJ import settings
* updated intellij-setup.md
* Spotless
* drift
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-09-11 11:53:08 -07:00
Trask Stalnaker
344e205720
Help out Intellij ( #3595 )
2021-07-16 15:55:30 +09:00
Mateusz Rzeszutek
9a3734f8ed
Clean up bootstrap dependencies and build scripts ( #3570 )
...
* Clean up bootstrap dependencies and build scripts
* add evaluationDependsOn()
* Resolve configuration later
* remove the javaagentLibs config
* Fix muzzle bootstrap classpath
* Fix after rebase
* Try javaagentLibs once again
2021-07-15 18:56:36 +02:00
HaloFour
814239c8c0
Adds binding of attributes in methods annotated with @WithSpan ( #3188 )
...
* Add binding of span attributes for traced methods
* Spring Aspect support, memoization
* Test with attribute name from ParameterNameDiscoverer
* Refactorings, javadocs and tests
* Refactor out creating AttributeBinding to separate class
* Wrapped attribute bindings for array parameters
* Attribute binding for List and EnumSet
* Attribute binding for subclass of List with reflection helper class
* Fix test failures in JDK 8
* Attribute binding to Set<? extends Enum>
* Move attribute binding to instrumentation-annotation-support project
* Fix copypastaed missing imports in tests
* Simplify ParameterizedClass based on PR feedback and add javadocs
* Remove blank javadoc
* Switch to cache with weak keys for memoizing attribute bindings by method
* Remove binding support for EnumSet<?>
* Clean up javadoc
* Use SpanAttribute annotation from opentelemetry 1.4.0-SNAPSHOT
* Address some PR concerns
* Clean up
* Fix instrumentation dependency in Springboot
* Update documentation
* Switch javaagent dep to compileOnly per PR comment
* spotless
* Kick CI
* Rename annotation support module and packages
* Resolve SpanAttribute annotation at runtime with fallback for older OTel versions
* Remove unnecessary dependency
* Move reflection helper to annotation support module
* Remove unnecessary enum and fields from unit test
2021-07-14 13:32:07 -07:00
Mateusz Rzeszutek
c1b5c0884d
Move caffeine patching to instrumentation-api-caching ( #3559 )
2021-07-14 13:59:50 +02:00
Trask Stalnaker
d0cb08a37b
Rename javaagent-api artifact to javaagent-instrumentation-api ( #3513 )
...
* part 1
* part 2
* Undo change in examples
* Spotless
2021-07-12 21:53:49 -07:00
Trask Stalnaker
093ff6ac43
Checkstyle for logger ( #3520 )
...
* Add checkstyle validation for logger name
* Missed one
2021-07-08 09:54:38 +03:00
Nikita Salnikov-Tarnovski
901bae57b4
Make HelperInjector's dependency on Instrumentation instance more visible ( #3491 )
...
* Make HelperInjector's dependency on Instrumentation instance more visible
* Polish
* Polish
* Fix docs
2021-07-06 07:44:26 +03:00