Trask Stalnaker
177f0aec7c
Rename instrumentation-api-annotation-support ( #6288 )
2022-07-08 17:07:41 -07:00
Mateusz Rzeszutek
e7887ac929
Idea: deprecate `Config`, add agent-only `InstrumentationConfig` ( #6264 )
...
* Idea: deprecate Config, add agent-only InstrumentationConfig
* fix
* fix camel test
* fix external-annotation tests
2022-07-08 16:20:49 +02:00
Mateusz Rzeszutek
198dad00d6
Prefer using ConfigProperties over Config in AgentListener ( #6202 )
...
* Prefer using ConfigProperties over Config in AgentListener
* normalize property name
* add TODOs
2022-07-07 15:44:32 +02: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
Mateusz Rzeszutek
4c5ce632f5
Support metric view configuration file in the Javaagent ( #6228 )
2022-06-29 22:11:49 -07:00
Trask Stalnaker
8fac01e736
Enable error prone's UnusedVariable check ( #6217 )
...
* Enable error prone's UnusedVariable check
* Spotless
2022-06-27 10:55:27 +02:00
Trask Stalnaker
1e439e73d3
Update to OpenTelemetry SDK 1.15.0 ( #6170 )
2022-06-14 09:44:42 -08:00
Lauri Tulmin
091197a128
Allow specifying a comma separated list of extensions ( #6137 )
...
* Allow specifying a comma separated list of extensions
* update doc
* typo
* Update examples/extension/README.md
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-06-08 13:34:37 +03:00
Trask Stalnaker
9c2e508e20
Fix debug logging ( #6085 )
...
* Fix debug logging
* Add a test
2022-05-24 11:06:38 +03:00
Mateusz Rzeszutek
cb7421c592
Add an SPI for customizing Config just before it's set ( #6010 )
...
* Add an SPI for customizing Config just before it's set
* deprecate ConfigPropertySource in favor of ConfigCustomizer
* errorprone
2022-05-16 11:55:01 -07:00
Mateusz Rzeszutek
6a0ca530b7
Instrumentation API changes: VirtualField ( #6017 )
...
* Instrumentation API changes: VirtualField
* change class name in string constant
2022-05-12 11:17:24 -07:00
Trask Stalnaker
d6cf07496d
Add LoggingCustomizer SPI ( #5997 )
...
* Add LoggingCustomizer SPI
* Add comment
* suppress
* Re-order
* Also encompass init() itself
* comment
2022-05-11 18:09:12 -07:00
Mateusz Rzeszutek
25d929b5e7
Deprecate the AgentListener#beforeAgent() method ( #6006 )
...
* Deprecate the AgentListener#beforeAgent() method
* errorprone
2022-05-10 10:30:40 -07:00
Trask Stalnaker
8afa13eec8
Minor changes to startup code ( #5992 )
...
* Minor changes to startup code
* Fix test
2022-05-10 09:26:38 -07:00
Mateusz Rzeszutek
d919f84cf8
Merge javaagent-instrumentation-api into javaagent-extension-api ( #5936 )
...
* Merge javaagent-instrumentation-api into javaagent-extension-api
* remove some leftover references to javaagent-instrumentation-api
* add missing instrumentation-api to distro example
2022-04-28 20:11:15 -07:00
Trask Stalnaker
e3588ceee3
Fix some jul messages ( #5930 )
2022-04-27 10:33:12 -07:00
wallezhang
90a239d61b
fix: Fix logging exporter autoconfigured judgment logic problem ( #5928 )
2022-04-25 11:28:44 +03:00
Lauri Tulmin
4d0564a136
Exclude spring temporary type matching class loader ( #5912 )
2022-04-22 08:32:16 -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
Trask Stalnaker
4879cedccb
Prevent possible deadlock ( #5830 )
2022-04-14 15:00:39 -07:00
Lauri Tulmin
3940529dd2
Agent tooling already has access to bootstrap proxy ( #5802 )
2022-04-11 12:41:30 -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
Anuraag Agrawal
7e428168ff
Update dependencies ( #5777 )
...
* Update dependencies
* Update licenses
* Exclude licenses from link check
* Exclude licenses from link check?
2022-04-08 20:00:53 +09: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
Mateusz Rzeszutek
65717dae3e
Cleanup Config & ConfigBuilder API ( #5733 )
...
* Cleanup Config & ConfigBuilder API
* errorprone
* errorprone & spotless
* spotless
2022-04-05 20:20:52 -07:00
Mateusz Rzeszutek
8e722cc264
Library instrumentation should read its version from a file ( #5692 )
...
* Library instrumentation should read its version from a file
* errorprone
* animalsniffer
* code review comments
* add name as task input too
* code review comments
2022-04-04 11:52:23 -07:00
Mateusz Rzeszutek
2fd167cfe0
Move BootstrapPackagesConfigurer to javaagent-tooling ( #5734 )
2022-04-01 11:33:07 -07:00
Lauri Tulmin
c9ec6f2d5d
Fix flaky exception handler test ( #5730 )
2022-04-01 11:18:01 -07: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
56f65e4fab
Convert all logging statements from slf4j to jul - part 1 ( #5628 )
...
* Convert all logging statements from slf4j to jul - part 1
* fix tests
* use placeholders
* fixed all comments, added static imports for Level
2022-03-22 10:35:27 -07: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
Anuraag Agrawal
36b758e600
Add jaeger remote sampler to agent ( #5346 )
2022-02-11 16:40:26 +09:00
Anuraag Agrawal
791083eedf
Remove separate exporter configuration which we always have in distro… ( #5331 )
...
* Remove separate exporter configuration which we always have in distro now.
* Actually remove
2022-02-11 12:11:35 +09:00
Anuraag Agrawal
407e86df2b
Update to Otel 1.11.0 ( #5322 )
...
* Update to OTel 1.11
* Suppress gRPC export usage warning
2022-02-09 12:53:09 +09:00
Trask Stalnaker
0510ca6188
Remove slim artifact ( #5251 )
...
* Remove slim artifact
* Fix build
* Revert one change
2022-01-27 08:31:46 -08:00
Anuraag Agrawal
e6e2190f68
Fix most lint warnings. ( #5180 )
...
* Fix most lint warnings.
* Fix test
2022-01-20 18:28:45 +09:00
Anuraag Agrawal
ec375116be
Fix more lint warnings ( #5174 )
...
* Fix more lint warnings
* Redisable lint
* Drift
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-01-20 12:48:46 +09: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
bdd82a899e
Parameterize VirtualField field type ( #5165 )
...
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-01-18 13:42:44 -08:00
Anuraag Agrawal
b7a95857c7
Fix some java lint warnings ( #5120 )
...
* Convert InstrumentationTestRunner from interface to abstract class
* Foo
* Commit
* Revert unintended
2022-01-17 10:26:03 -08:00
Samudraneel Dasgupta
3b0c49094d
Spring RMI instrumentation ( #5033 )
...
* Spring RMI instrumentation
* Change the order of import statements
* remove extra separation in import statements
* stylistic changes
* Fix groovy rule violations
* Formatting changes in groovy file
* Spotless fixes and muzzle check version change
* Fixed minimum version in filenames and fixed muzzle check
* single InstrumentationModule and added context propagation test
* Merged singletons, use random port in test and add stricter matchers.
* Remove unused import
2022-01-14 13:56:40 -08:00
Lauri Tulmin
40ce04028a
Fix flaky OpenTelemetryInstallerTest ( #5123 )
2022-01-14 10:22:44 -08:00
jason plumb
963b5cc087
Connect AgentLogEmitterProvider global during OpenTelemetryInstaller ( #5088 )
...
* during install, hook up the log emitter provider for instrumentation to use.
* spotless
* Fix tests
* Default instrumentation name to ROOT when logger name null/empty
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-01-13 08:31:02 -08:00
Trask Stalnaker
f7da97bd9d
Move appender api to internal ( #5080 )
...
* rename artifacts and packages
* Library users shouldn't need to use internal
* Update docs
* Rename in order to simplify HelperClassPredicate
* Spotless
* Move AgentLogEmitterProvider to javaagent-instrumentation-api
2022-01-12 08:38:28 -08:00
Anuraag Agrawal
c75c01f871
Update to OTel 1.10 ( #5035 )
...
* Update to OTel 1.10
* Fix metric smoke test
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-01-07 15:45:20 -08:00
Nikita Salnikov-Tarnovski
25550e0a63
Stop using deprecated constructor ( #5040 )
...
* Stop using deprecated constructor
* Try to fix the build
2022-01-07 11:47:54 -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
Trask Stalnaker
e5da618196
Add logs to testing infra ( #4927 )
...
* Add logs to testing infra
* Drift
2021-12-17 18:23:42 -08:00
Anuraag Agrawal
5e1e0c2642
Update to OTel 1.10 ( #4866 )
...
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-12-16 18:46:17 +09:00
Mateusz Rzeszutek
93a3282490
Remove ConfigPropertiesAdatpter as it's no longer needed ( #4888 )
2021-12-13 12:20:11 -08:00
jack-berg
45dca4fc5d
Expose AutoConfiguredOpenTelemetrySdk to AgentListener ( #4831 )
...
* Expose AutoConfiguredOpenTelemetrySdk to AgentListener
* Only call AgentListener if noop is disabled, deprecate AgentListener methods
* Call AgentListener in DelayedAfterAgentCallback
2021-12-10 12:55:57 -08:00
Nikita Salnikov-Tarnovski
a70682c390
Remove unhelpful benchmarks ( #4766 )
...
* Remove unhelpful benchmarks
* Restore one more benchmark
* spotless
2021-12-02 17:17:39 +02:00
Lauri Tulmin
f5142f24e9
Remove internal-proxy instrumentation ( #4749 )
2021-11-30 07:56:26 -08: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
f525f3e03f
Some logging cleanup ( #4734 )
2021-11-29 09:45:23 -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
Anuraag Agrawal
6063a16f54
Update to OTel 1.9 ( #4634 )
...
* Update to OTel 1.9
* Check null
2021-11-15 17:56:53 +09:00
Lauri Tulmin
73a28dadb4
Fail tests on muzzle failre ( #4545 )
2021-11-02 16:06:34 +02:00
Lauri Tulmin
b3d9ae8268
Fix sun.misc.Unsafe generation on jdk17 ( #4558 )
...
* Fix sun.misc.Unsafe generation on jdk17
* remove jmxremote argument for now
* spotless
* remove unneeded annotation
2021-11-02 16:05:51 +02:00
Lauri Tulmin
12ec0fa481
Fix ClassCircularityError when running with security manager ( #4557 )
2021-11-02 09:30:01 +01:00
Lauri Tulmin
8dce10f8ae
Muzzle match only once in each class loader ( #4543 )
...
* Muzzle match only once in each class loader
* Move muzzle matcher caching from ReferenceMatcher to InstrumentationModuleInstaller
* Update comment as caching was moved to a different method
* Fix comment
2021-11-01 11:30:03 -07:00
Lauri Tulmin
c109773f17
Test modular jdk ( #4501 )
...
* Test modular jdk
* review comment
2021-10-28 10:54:00 -07:00
Lauri Tulmin
41a143812e
On failure log the whole matcher ( #4500 )
2021-10-25 22:45:20 -07:00
Lauri Tulmin
9b8ab5eeec
Migrate to spock 2 ( #4458 )
...
* Migrate to spock 2
* Fix smoke test suites
* address review comments
* review comment
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-10-22 08:40:58 -07:00
Lauri Tulmin
17a85bbc22
Use byte-buddy-dep instead of byte-buddy ( #4400 )
...
* Use byte-buddy-dep instead of byte-buddy
* print stacktrace on examples failure
* try to fix gradle plugins
* try to fix extension build
* try to fix extension build
* try to fix extension build
* try to fix extension build
* try removing mavenLocal
* add mavenLocal plugin repository
* publish gradle-plugins to mavenLocal for examples ci build
* Fix bytebuddy exclusion
2021-10-19 13:46:48 -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
Trask Stalnaker
0652894a8b
Obfuscate virtual field accessors ( #4385 )
...
* Obfuscate virtual field accessors
* Update internal-reflection instrumentation
* Update test
* Remove outdated comment
2021-10-15 14:36:56 -07:00
Lauri Tulmin
0ba49ac850
Hide virtual field accessor interface methods from reflection ( #4390 )
2021-10-15 11:07:26 -07:00
Trask Stalnaker
d781995d0a
Less surprising behavior ( #4349 )
...
* Less surprising behavior
2021-10-13 10:10:03 +03:00
Mateusz Rzeszutek
ff8696586d
Remove VirtualField#computeIfNull() method ( #4354 )
2021-10-12 11:37:35 -07:00
Mateusz Rzeszutek
8d73403188
Back VirtualField with a volatile field ( #4355 )
2021-10-12 10:54:40 -07:00
Anuraag Agrawal
f208ba72b7
Update to OTel 1.7 ( #4340 )
...
* Update to OTel 1.7
* Fix metrics tests
2021-10-11 19:52:50 +09:00
Mateusz Rzeszutek
fb77651658
Restrict usage of arrays as VirtualField types and fix field naming ( #4323 )
...
* Restrict usage of arrays as VirtualField types and fix field naming
* disallow primitive type usage too
* A few more test cases and validations
2021-10-08 10:52:26 +02:00
Nikita Salnikov-Tarnovski
0683371110
Add supported way to add additional helper classes to instrumentation without interfering with muzzle ( #4302 )
...
* Add supported way to add additional helper classes to instrumentation without interfering with muzzle
* Better javadoc
2021-10-06 09:52:54 -07:00
Mateusz Rzeszutek
fda4779127
Fix a bug in the field backed VirtualField implementation ( #4310 )
...
* Fix a bug in the field backed VirtualField implementation
* Multiple interface fields
2021-10-06 09:40:53 -07:00
Mateusz Rzeszutek
3e93dc8f29
Move Trie back to javaagent-tooling ( #4300 )
...
* Move Trie back to javaagent-tooling
* Code review comments
2021-10-05 16:07:33 -07:00
Trask Stalnaker
f63fe62a55
Fix merge conflict in main ( #4306 )
2021-10-05 13:35:19 -07:00
Mateusz Rzeszutek
b4984657b5
Move BootstrapPackagePrefixesHolder to javaagent-bootstrap ( #4303 )
2021-10-05 11:26:24 -07:00
Mateusz Rzeszutek
09ad3d2f58
Split FieldBackedImplementationInstaller into several smaller classes ( #4297 )
2021-10-05 11:25:39 -07:00
Nikita Salnikov-Tarnovski
9bbd490288
Remove last muzzle generate method from InstrumentationModule ( #4281 )
...
* Remove last muzzle generate method from InstrumentationModule
2021-10-05 14:43:21 +03:00
Trask Stalnaker
2a76d41807
Small renames for clarification ( #4294 )
2021-10-05 10:37:02 +03:00
Trask Stalnaker
0994c07bcf
Small optimization ( #4293 )
2021-10-04 21:45:10 -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
Mateusz Rzeszutek
c421b66d56
Remove unnecessary VirtualField#setIfNull() method ( #4262 )
2021-10-02 13:17:48 -07:00
Mateusz Rzeszutek
c11b96e4d0
Make it possible to use InstrumentationContext (now VirtualField) fro… ( #4218 )
...
* Make it possible to use InstrumentationContext (now VirtualField) from library instrumentation
* fix tests
* fix javadocs
* fix some more tests
* code review comments
* setIfNull, computeIfNull
2021-10-01 11:13:11 +02:00
Nikita Salnikov-Tarnovski
2eadca8c83
Move AgentExtension to the tooling module ( #4253 )
2021-09-30 18:57:39 +03:00
Nikita Salnikov-Tarnovski
ba332a970a
Remove deprecated method helperResourceNames from InstrumentationModule ( #4221 )
...
* Remove deprecated method helperResourceNames from InstrumentationModule
* Restore test
2021-09-29 15:25:19 +03:00
Nikita Salnikov-Tarnovski
19ce45bfc7
Remove deprecated ExporterClassLoader and exporter factories ( #4217 )
2021-09-28 09:42:40 -07:00
Nikita Salnikov-Tarnovski
5dffeef4aa
Introduce muzzle-specific interface to InstrumentationModule ( #4207 )
...
* Introduce muzzle-specific interface to InstrumentationModule
* Moved more methods to the InstrumentationModuleMuzzle interface
2021-09-28 12:15:33 +03:00
Lauri Tulmin
335d1cd784
Fix latest dep test failures ( #4201 )
2021-09-25 12:31:55 -07:00
Lauri Tulmin
559cdcbbee
Transform lambda classes ( #4182 )
...
* Transform lambda classes
* improve comment
2021-09-24 09:52:15 -07:00
Anuraag Agrawal
9d5cf4e0b3
Add logback.xml to testing-common ( #3726 )
...
* Add logback.xml to testing-common
* showStandardStreams
* Remove showStandardStreams due to verbosity
* Fix javaagent-tooling tests
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-09-24 10:09:42 +09: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
Mateusz Rzeszutek
dc4ddf7932
Remove ContextStore.Factory interface; use Supplier instead ( #4157 )
2021-09-17 13:00:23 -07:00