Commit Graph

53 Commits

Author SHA1 Message Date
Anuraag Agrawal 84e7306370
Don't instrument rxjava2 internal task class. (#2672)
* Don't instrument rxjava2 internal task class.

* spotless

* AtomicBoolean

* Update instrumentation/rxjava-2.0/javaagent/src/main/java/io/opentelemetry/instrumentation/rxjava2/RxJava2InstrumentationModule.java

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-04-01 08:01:25 +09:00
Anuraag Agrawal dcd316da7a
Enable strict context check and fix some context issues. (#2637)
* Enable strict context check and fix some context issues.

* Drift

* Drift and cache

* Exclude grizzly include akka

* Grizzly, scala

* ForkJoin worker

* webflux comment, grizzly typo

* Give up on akka for now

* threadpool

* Fallback on grizzly, wait for completion in executor cancellation tests

* Hystrix

* ratpack

* Cleanups
2021-03-29 08:08:11 +03:00
Anuraag Agrawal 79d7e88e53
Use Caffeine for weak maps (#2601)
* Caffeine weakmap

* Use Caffeine for weak maps

* Drift

* Drift

* Remove weak-lock-free

* Update licenses

* Fix bug

* Restore weaklockfree

* Clean

* Fixes

* Inline expunction

* Synchronized

* More comment

* Fix shading

* Executor

* computeIfAbsent and delete unused.

* Fix license report
2021-03-24 17:12:26 +09:00
Ago Allikmaa 69c2644774
Servlet 5 API, reorganize servlet modules (#2609)
* Servlet 5.0 API support, refactored other servlet modules

* Include correct servlet instrumentation module for grails tests

* Reapply spotless after rebase

* Fix checkstyle

* Spotless

* Addressed PR suggestions

* Fixed files in wrong package.

* Fixed mixed up instrumentation names.

* Fixed incomplete instrumentation name.

* Addressed PR suggestions

* Addressed PR suggestions
2021-03-23 14:11:43 +02:00
Mateusz Rzeszutek 670a9cde3f
Minor InstrumentationClassPredicate refactor (don't treat javaagent-t… (#2536)
* Minor InstrumentationClassPredicate refactor (don't treat javaagent-tooling as helper classes)

* Update javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/muzzle/InstrumentationClassPredicate.java

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>

* fix tests

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-03-12 16:36:34 +01:00
Lauri Tulmin ff3542eff8
Fix prematurely ending server span on undertow (#2560)
* Fix permaturely ending server span on undertow

* Trigger Build

* Add undertow to supported frameworks

* Review fixes

* Update instrumentation/undertow/javaagent/src/test/groovy/UndertowServerTest.groovy

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>

* Update instrumentation/undertow/javaagent/src/test/groovy/UndertowServerTest.groovy

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>

* Review fixes

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-03-12 16:52:33 +02:00
Trask Stalnaker f94fabe07f
Fix app failure under Eclipse OSGi (#2521)
* Fix app failure under Eclipse OSGi

* Feedback

* Alphabetical
2021-03-10 08:19:32 +02:00
Piotr Glazar 92d61b5844
Auto value (#2494)
* SqlStatementInfo as AutoValue

* RequestMeta as AutoValue

* DbInfo as AutoValue

* After merge compilation fix

* CouchbaseQuerySanitizer compilation fix

* JdbcConnectionUrlParserTest compilation fix

* Revert "RequestMeta as AutoValue"

This reverts commit 609b57ee48.
2021-03-09 15:07:03 +02:00
Mateusz Rzeszutek 3dff44874f
Fix RestTemplateInterceptor so that it calls endExceptionally() on exception (#2516) 2021-03-08 09:36:47 -08:00
Anuraag Agrawal 94872b1ced
Move DB helpers to instrumentation-api (#2511)
* Move DB helpers to instrumentation-api

* Fix gradle config

* Remove legacy
2021-03-08 12:32:36 +09:00
Anuraag Agrawal d7f8967ff6
Add a caching API based on caffeine for use from instrumentation, not just javaagent (#2477)
* Add caching API

* Finish

* javadoc

* Extract dep

* git add

* Drift

* Spotbugs

* checkstyle

* Fix package

* Test Caffeine patch
2021-03-05 17:57:23 +09:00
Trask Stalnaker 0abc492bc3
Rename more properties (#2486)
* Rename more props to experimental

* Rename more properties

* Rename .internal to .testing

* Revert changes to examples distro

* Move chunk.new-trace to experimental

* Fix unrelated build issue
2021-03-04 11:20:47 -08:00
Mateusz Rzeszutek fbe55e04aa
Use low cardinality span names in Cassandra instrumentation (#2423) 2021-03-03 17:54:44 +01:00
Anuraag Agrawal 9f3dfdbc51
Use atomic updaters instead of atomic fields to reduce allocations fo… (#2462)
* Use atomic updaters instead of atomic fields to reduce allocations for commonly created objects.

* Typo
2021-03-03 14:56:37 +09:00
Mateusz Rzeszutek 8f3ea83504
Move some classes out of instrumentation-api (#2466)
* MethodsConfigurationParser is moved to javaagent-tooling - it's only used in some instrumentation modules
* BootstrapPackagePrefixesHolder is moved to javaagent-api - it just needs to be in the bootstrap CL for the classloader instrumentation, so it does not necessarily need to be instrumentation-api
2021-03-02 10:31:53 -08:00
Trask Stalnaker c838498a73
Rename two props to otel.instrumentation.common.* (#2457) 2021-03-02 10:25:36 -08:00
John Watson 57185f5b73
Create a new SupportabilityMetrics class rather than using alpha Metrics (#2353) 2021-02-24 12:34:45 -08:00
Mateusz Rzeszutek a74f60b3f8
Add JUnit 5 extensions for instrumentation testing (#2241)
* Add JUnit 5 extensions for instrumentation testing

* Fix kafka tests

* RepeatedTest
2021-02-12 12:57:08 +01:00
Mateusz Rzeszutek 27d5786d65
Allow getting current call depth (#2184)
* Allow getting current call depth

* Add comment
2021-02-04 12:41:33 +01:00
Mateusz Rzeszutek c61f3f2949
Use a single configuration property for db.statement sanitization (#2125)
* Use a single configuration property for db.statement sanitization

* spotless
2021-01-29 16:02:15 +09:00
jason plumb 782a646d89
Cache sql sanitized extraction (#2094) 2021-01-27 10:04:58 -08:00
Mateusz Rzeszutek 20dadc1b6d
Replace two JavaCC lexers with a single JFlex one (#2113) 2021-01-26 14:03:11 -08:00
Nikita Salnikov-Tarnovski 2d683d4289
No more gradle warnings (#2103) 2021-01-26 08:24:18 +02:00
jason plumb 7122c4b2a5
Rename "normalize" to "sanitize" (#2087)
* rename SqlNormalizer to SqlSanitizer (more descriptive).

* rename normalize to sanitize.

* rename in comments and messages

* rename in variable to sanitized

* rename normalized -> sanitized in tests

* fixed broken tests

* rename variable.

Co-authored-by: Anuraag Agrawal <aanuraag@amazon.co.jp>
2021-01-22 15:49:24 +09:00
Anuraag Agrawal afdde0355b
Update to OTel 0.14.1 (#2059)
* Update SDK dependency to 0.14.1

* WIP

* Finish

* Cleanup
2021-01-18 13:02:04 +09:00
Lauri Tulmin 640a7d624b
Correct some spelling mistakes (#2025) 2021-01-12 11:10:45 -08:00
Anuraag Agrawal 3b88bb75ae
Use SemanticAttributes for DbSystem (#1991) 2021-01-07 18:59:56 -08:00
Lauri Tulmin 1671951699
Fix jetty context leak (#1966) 2021-01-05 14:16:12 -08:00
Anuraag Agrawal 8d74baa2e4
Run tests with javaagent. (#1643)
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2021-01-04 13:13:24 -08:00
Lauri Tulmin 5b2e4ce1c7
Fix javadoc link (#1969) 2021-01-04 13:16:56 +09:00
Mateusz Rzeszutek f82e9107d6
Instrument spring-batch (#1843)
* Instrument spring-batch: job & step

* Instrument spring-batch: job & step - code review comments

* Instrument spring-batch: job & step - code review comments

* Instrument spring-batch: job & step - code review comments

* spotless

* Apply suggestions from code review

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>

* Instrument spring-batch: job & step - code review comments

* spotless

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2020-12-16 13:27:23 +02:00
Mateusz Rzeszutek f520c2cd33
Remove deprecated SpanWithScope class (#1834) 2020-12-05 09:48:28 -08:00
Trask Stalnaker 65f54e450b
Use Context more in HttpClientTracer (#1811)
* Use Context more in HttpClientTracer

* Better http-url-connection response object

* Follow database semantic conv for elasticsearch-rest

* Remove unnecessary CallDepth tracking
2020-12-03 11:47:08 -08:00
Trask Stalnaker a2770c311e
Don't use ConfigUtils outside of AgentTestRunner tests (#1796)
* NetPeerUtilsTest

* RedisCommandNormalizerTest

* InstrumentationModuleTest

* HttpClientTracerTest

* Normalize test config properties

* Create ConfigBuilder in instrumentation-api

* Keep config properties compatible with SDK
2020-12-01 16:52:08 -08:00
Trask Stalnaker 573cd0b4e9
Propagate context even when no span (#1802)
* Propagate context even when no span

* Don't propagate root context
2020-11-30 08:26:50 +02:00
Trask Stalnaker 0c5c4caaa4
Rename java-concurrent and java-classloader instrumentation modules (#1733)
* Rename java-concurrent instrumentation to executors

* Rename java-classloader to classloaders
2020-11-23 17:49:10 -08:00
Trask Stalnaker d2f064dcd4
Add static keyword to make groovy inner classes nested (#1734)
* Add static keyword to make groovy inner classes nested

* Too much

* A bit less

* Spotless
2020-11-23 15:43:42 +02:00
Trask Stalnaker 79f76c78ad
Move java files to java source folder and groovy files to groovy source folder (#1735)
* Move java files to java source folder

* Move groovy files to groovy source folder

* Too much

* Move another one back

* Codenarc

* Move test resource to where test is

* Spotless
2020-11-23 15:42:04 +02:00
Trask Stalnaker 308a8f9b0f
Consistent equals implementations (#1736)
* Consistent equals implementations

* Use direct equals where previous behavior
2020-11-23 15:41:31 +02:00
John Watson e9821e9cd1
Directly port the java-runtime-metrics module over from otel-java. (#1720)
* Directly port the java-runtime-metrics module over from otel-java.

* java 8 cleanups

* Make consistent with oshi module

* Bump mockito and assertj versions

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2020-11-21 10:51:03 -08:00
Trask Stalnaker 6d5ec329d6
Enable checkstyle for google style guide (#1641) 2020-11-16 18:46:59 -08:00
Mateusz Rzeszutek 1765839d01
Simplify JDBC span names (#1533) 2020-11-10 13:34:54 -08:00
Mateusz Rzeszutek 8629edd346
Run muzzle once per instrumented library - introducing InstrumentationModule (#1528)
* Run muzzle once per instrumented library - introducing InstrumentationModule

* spotless

* Fix muzzle

* Apply code review comments
2020-11-04 15:39:12 +01:00
Anuraag Agrawal d3b60a5e33
Rename TRACER to tracer() (#1540) 2020-11-02 20:49:51 -08:00
Anuraag Agrawal c6eee70660
Update to latest snapshot. (#1524) 2020-10-29 18:54:09 -07:00
Mateusz Rzeszutek e89942d430
Standardize DB query normalizer property names (#1509)
* Standardize DB query normalizer property names

And add normalizer configuration for Redis, Couchbase, Cassandra and Geode

* apply code review comments
2020-10-29 16:20:33 +02:00
Mateusz Rzeszutek 35dc9071ef
Log normalised full statement in Redis instrumentations (#1441)
* Log normalised full statement in Redis instrumentations (jedis, lettuce, redisson)
2020-10-27 14:29:47 -07:00
Anuraag Agrawal a2dccf2316
Update to latest SDK snapshot. (#1479) 2020-10-26 19:29:46 -07:00
Trask Stalnaker 3565775b00
Format groovy (#1475)
* Apply Intellij format to groovy

* spotless
2020-10-26 11:47:12 +09:00
Anuraag Agrawal f6ad05b8e3
Update to latest SDK snapshot (#1384)
* Update to latest SDK snapshot

* Use published snapshot

* Fixes

* Cleans

* spotless

* Most

* Clean

* Merge

* Temporarily remove context interop

* WIP

* Prepare for intercepting propagated span

* Bump SDK

* IDE updates

* Lots

* compileJava

* Done?

* bar

* Spot

* drugs

* Groovy--

* green for me

* Spot

* Remove grpc import

* Scrub
2020-10-25 15:14:32 +09:00