Commit Graph

66 Commits

Author SHA1 Message Date
Lauri Tulmin 85a52ca804
Convert integration tests to java (#13244) 2025-02-11 06:03:38 -08:00
SylvainJuge ca3c685c3c
indy instrumentation - leftovers migration (#13074) 2025-01-31 07:47:07 -08:00
FlorianBruckner 260f2379a6
fix instrumentation module not loading silently when duplicate helper… (#13005)
Co-authored-by: Lauri Tulmin <ltulmin@splunk.com>
Co-authored-by: Lauri Tulmin <tulmin@gmail.com>
2025-01-10 08:20:15 -08:00
Jonas Kunz 427c8e551f
Make internal classloader instrumentation indy compatible (#12242)
Co-authored-by: SylvainJuge <763082+SylvainJuge@users.noreply.github.com>
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2024-10-24 23:26:26 +00:00
Jonas Kunz f74af5476e
Force dynamic typing on AssignReturned annotations (#11884) 2024-08-13 07:30:51 -07:00
Jonas Kunz f8c383c62e
Allow any types in invokedynamic advice method signatures (#11873)
Co-authored-by: Lauri Tulmin <tulmin@gmail.com>
2024-08-01 08:59:35 -07:00
Lauri Tulmin fda1ee124a
Add timeout to awaitGc (#10081) 2023-12-15 11:45:35 -08:00
Jonas Kunz 6eb8ae19df
Allow injection of helper bytecode as resources (#9752) 2023-11-06 09:37:52 -08:00
Lauri Tulmin 5a2f52978f
Make kafka library and javaagent instrumentations more similar (#9738) 2023-10-24 09:08:03 -07:00
Lauri Tulmin a2f01e577e
Make more tests run with indy (#9729) 2023-10-24 12:23:50 +03:00
Jonas Kunz 2d4d010cb0
Add capability for invokedynamic InstrumentationModules to inject proxies (#9565) 2023-10-19 10:11:24 -07:00
Lauri Tulmin 0511f5f7c3
Suppress exception test should not count as advice failure (#9658) 2023-10-12 13:37:13 +02:00
Lauri Tulmin 9dd220350d
Use class as test parameter instead of object (#9659) 2023-10-12 13:36:22 +02:00
Lauri Tulmin 7d2259742a
Transform inline advice to delegating advice and test indy modules (#9508) 2023-09-22 11:15:39 +03:00
Jonas Kunz 10480adc64
Implement invokedynamic advice bootstrapping (#9382) 2023-09-13 17:44:47 -07:00
dependabot[bot] 00612c3406
Bump cglib from 3.2.5 to 3.3.0 (#7327) 2022-11-28 15:24:06 -08:00
Trask Stalnaker 5345c87680
End groovy files with newline (#7127) 2022-11-10 12:21:55 +01: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 c3c4fb7101
Finish annotation move (#6386)
* Update tests with new annotation

* more

* Fix build

* More
2022-08-01 09:19:58 -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
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
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
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 213057d057
Run check during testing and assemble during building (#5619) 2022-03-18 13:48:51 +09: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
Mateusz Rzeszutek ff8696586d
Remove VirtualField#computeIfNull() method (#4354) 2021-10-12 11:37:35 -07: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
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 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 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 8c8eb3ddea
Use caffeine3 on jdk11 and caffeine2 on older jdks (#4154)
* Use caffeine3 on jdk11 and caffein2 on older jdks

* ignore caffeine3 classes on java 8

* Update dependencyManagement/build.gradle.kts

Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>

Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>
2021-09-21 14:04:09 -07:00
Mateusz Rzeszutek dc4ddf7932
Remove ContextStore.Factory interface; use Supplier instead (#4157) 2021-09-17 13:00:23 -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
Lauri Tulmin 564f51c706
Hide our generated fields and methods from reflection (#3948) 2021-08-25 09:24:27 -07:00
Lauri Tulmin 1dae415ebc
Mark our generated classes and members as synthetic (#3928) 2021-08-24 09:53:22 -07:00
Anuraag Agrawal d3b62de8a5
Replace most uses of TraceUtils with testRunner runWithSpan. (#3582) 2021-07-15 10:30:34 -07: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
Anuraag Agrawal 262c5d59d7
Migrate testing and shaded-for-instrumenting builds to kotlin (#3448)
* Migrate testing and shaded-for-instrumenting builds to kotlin

* Migrate
2021-06-30 19:21:20 +09:00
Anuraag Agrawal 785dc6adf2
Rename build files to build.gradle (#3409)
* Rename build files to build.gradle

* Rename smoke-tests

* Fix already broken
2021-06-25 16:10:31 +09:00
Anuraag Agrawal 9e763d69a7
Extract build plugin for instrumentation testing projects that aren't muzzled / published. (#3354) 2021-06-19 11:04:33 +09:00
Anuraag Agrawal 80f43b7a6a
Migrate javaagent-instrumentation to plugin (#3328)
* Migrate instrumentation.gradle to plugin

* Migrate usages

* Remove old

* Fix

* Revert example

* afterEvaluate

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-06-17 23:13:14 +09:00
Trask Stalnaker c79b5c5f1d
Fix some raw types warnings (#3300)
* Fix some raw types warnings

* oops
2021-06-15 08:42:07 +03:00
Trask Stalnaker ab174f4f9c
Remove javaagent-tooling test forking (#3272)
* Remove javaagent-tooling test forking

* Remove one more forking
2021-06-13 10:57:45 -07:00
Anuraag Agrawal f91e35616f
Migrate remaining usages of TestHttpServer to Armeria. (#3231)
* Migrate remaining usages of TestHttpServer to Armeria.

* Remove unused.

* Shade netty tcnative to allow TLS on Java 8
2021-06-10 09:28:44 +09:00
Anuraag Agrawal 2436499a09
Update to Errorprone 2.7 (#3181)
* Update to errorprone 2.7

* ToString

* Finish
2021-06-04 10:40:55 +09:00
Anuraag Agrawal c3dedbb64e
Enable all errorprone checks (#3155)
* Enable all errorprone checks

* Fixes

* Finish

* Finish

* Add flag to disable error prone
2021-06-01 17:41:08 +09:00
Trask Stalnaker fb0d047fce
Last type instrumentations to top-level classes (#3123) 2021-05-30 16:05:31 -07:00
Anuraag Agrawal ed88cca533
Migrate from spotbugs to errorprone (#3122)
* Migrate from spotbugs to errorprone

* Fix hashtable

* try-with-resources

* Fix from merge

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-05-28 14:23:40 -07:00