Richard Startin
4e836f1c72
Replace remaining named disjunctions with namedOneOf or namedNoneOf ( DataDog/dd-trace-java#1584 )
2020-06-23 14:08:45 -07:00
Richard Startin
0fad251165
Introduce matcher for membership of a set of names ( DataDog/dd-trace-java#1583 )
2020-06-23 14:08:45 -07:00
Laplie Anderson
f628f02de6
Do not attempt to instrument websocket upgrade handlers ( DataDog/dd-trace-java#1567 )
2020-06-23 14:08:45 -07:00
Richard Startin
a252985562
Cache span names derived from class and method names ( DataDog/dd-trace-java#1562 )
2020-06-23 14:08:44 -07:00
Brian Devins-Suresh
07c64f15e1
Update play-2.6 instrumentation to support Play version 2.8.x ( DataDog/dd-trace-java#1521 )
2020-06-23 14:08:44 -07:00
Lev Priima
da15d0de64
ApacheHttpClientRedirectInstrumentation copy headers from original request to redirect if original redirect headers were empty ( DataDog/dd-trace-java#1539 )
2020-06-23 14:08:44 -07:00
Tyler Benson
88c14dcab2
Add some tests for Java CompletableFuture ( DataDog/dd-trace-java#1546 )
2020-06-23 14:08:44 -07:00
Anuraag Agrawal
918d3913e3
Populate user-agent in HTTP clients. ( #540 )
2020-06-22 21:13:12 -07:00
Trask Stalnaker
126c972864
Optimization for expensive type matcher ( #558 )
2020-06-22 19:17:34 -07:00
Trask Stalnaker
82a1b35828
Update otel api instrumentation module name ( #551 )
...
* Update otel api instrumentation module name
* Remove vbeta subpackage
Co-authored-by: Nikita Salnikov-Tarnovski <gnikem@gmail.com>
2020-06-22 16:42:55 +03:00
Trask Stalnaker
9dcb079aa6
Fix duplicate log capture, part 2 ( #554 )
2020-06-22 11:13:36 +03:00
Trask Stalnaker
f61b316b67
Make Cassandra instrumentation Java 7 compatible ( #543 )
2020-06-20 16:52:02 -07:00
Trask Stalnaker
9cf0cb6b1e
Fix duplicate log capture ( #544 )
2020-06-19 08:45:34 +03:00
Anuraag Agrawal
9a2a0b5de9
Add lettuce 5.2 instrumentation that uses lettuce's native tracing functionality. ( #535 )
...
* Copy Lettuce 5.0 to start 5.1 instrumentation
* Begin tracing adapter implementation
Co-authored-by: Dustin Neray <dustin.neray@gmail.com>
* Set floor to 5.2 instead
* Move around
* Finish
* Cleanups
* Instrument 5.1+ instead
* Cleanup
* 5.1
* Remove latestDepTest from lettuce-5.0 since we have a newer lettuce-5.1.
* Remove
* Remove package check
* Spotless
Co-authored-by: Dustin Neray <dustin.neray@gmail.com>
2020-06-18 18:22:45 +03:00
Nikita Salnikov-Tarnovski
c1c02ac949
Next attempt to extract common logic from instrumentations. ( #523 )
...
* Next attempt to extract common logic from instrumentations.
I tried to reduce code repetition in DB client instrumentations, jdbc and mongo ones. This time I experimented with another approach, different from HttpServerTracer. Namely, I have extracted that common `startSpan` method into `DatabaseClientDecorator` itself. The idea is still the same as before, but I wanted to see if we can migrate by smaller steps, reusing much of the existing code and just incrementally reducing public API.
* Extracted separate Tracer after all
* More explicit call depth handling
* Fix format
* More reusable method overloads
2020-06-17 12:08:52 -07:00
Trask Stalnaker
1c2f74d8db
Possible fix for a sporadically failing test ( #522 )
...
Co-authored-by: Nikita Salnikov-Tarnovski <gnikem@gmail.com>
2020-06-15 07:55:51 +03:00
Nikita Salnikov-Tarnovski
c11835963f
Vert.x instrumentation improvements ( #503 )
...
* Support for Vert.x rx-java async tasks
* Use Vert.x route for server span name
* Move reactive Vert.x instrumentation into separate module
* Test fixes
* Format fixes
* Polish
* Fix license header
* Add Vert.x to README
2020-06-13 23:18:30 +03:00
Trask Stalnaker
4a26bd3ce7
Simplify setting of user.principal attribute ( #509 )
2020-06-13 12:11:03 +03:00
Trask Stalnaker
4b665dcbe2
Changed instrumentation tracer" TRACER.startSpan() to never return `null` ( #499 )
2020-06-12 16:15:38 -07:00
Richard Startin
57c0aed1fa
Use ClassValue to store ThreadLocal call depth ( DataDog/dd-trace-java#1528 )
2020-06-11 10:14:07 -07:00
Richard Startin
13264b3560
Add record.queue_time_ms to rabbitmq consumer span tags ( DataDog/dd-trace-java#1522 )
2020-06-11 10:14:07 -07:00
Richard Startin
c61034c945
Fix elasticsearch test flakiness ( DataDog/dd-trace-java#1513 )
2020-06-11 10:14:07 -07:00
Tyler Benson
1b29184e7c
Make rootDir usage consistent ( DataDog/dd-trace-java#1518 )
2020-06-11 10:14:02 -07:00
Tyler Benson
f2bf50684a
Use Retry.Mode.SETUP_FEATURE_CLEANUP to improve Elasticsearch test flakiness ( DataDog/dd-trace-java#1494 )
2020-06-11 10:12:11 -07:00
Trask Stalnaker
a5128fcd53
Support non-monotonic metrics ( #494 )
...
* Support non-monotonic metrics
* Fix check build
Co-authored-by: Nikita Salnikov-Tarnovski <gnikem@gmail.com>
2020-06-11 09:40:25 +03:00
Anuraag Agrawal
2600cb2056
Add missing AWS SDK helper. ( #483 )
2020-06-09 20:04:22 -07:00
Anuraag Agrawal
f13a9c4932
Move client span creation to decorator and automatically suppress creation of neste… ( #460 )
...
* Move client span creation to decorator and suppress creation of nested client spans.
* Store subtree client span in context.
* Apply new pattern to AWS V1 SDK instrumentation too, cleanup, and javadoc
2020-06-08 12:01:43 -07:00
Nikita Salnikov-Tarnovski
8ee54389da
Try to fix flaky test by replacing list comparison with set comparison ( #480 )
2020-06-08 20:00:38 +03:00
Nikita Salnikov-Tarnovski
357fb6e989
Deduplicate servlets ( #469 )
...
* Servlet instrumentations unified
* Grizzly migrated
* Fix tests after merge
* Polish and fix tests
* Polish and fix tests
* Muzzle fixes
* Muzzle fixes
* Muzzle fixes
* Test fixes
* One more check fixed
* Stop using SpanWithScope
* Test fix
* Compilation fix
* Apply suggestions from code review
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
* Update agent-bootstrap/src/main/java/io/opentelemetry/auto/bootstrap/instrumentation/decorator/HttpServerTracer.java
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
* Polish
* Tracer does not manage scope anymore
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2020-06-08 10:49:58 +03:00
Nikita Salnikov-Tarnovski
1c59062aae
0.5.0 ( #476 )
...
* Update to otel-java 0.5.0-SNAPSHOT (#462 )
* Update to otel-java 0.5.0-SNAPSHOT
* Tests pass
* Check fix
* Switch to otel-java 0.5.0
* Add TODOs
2020-06-05 20:11:49 +03:00
Rashmi
cfade733b8
Fixed Mongo client double tracing bug ( #471 )
...
* Fixes #457
* Addressing review comments
1. Added comments in test
2. Fixed latestDepTest failures in MongoAsyncClient by adding `declaresField`
3. Made TracingCommandListener inline in MongoClientAdvice
Co-authored-by: Nikita Salnikov-Tarnovski <gnikem@gmail.com>
2020-06-04 19:48:05 +03:00
Trask Stalnaker
96fa7b8c31
Merge changes from dd-trace-java 0.53.0 ( #456 )
...
* Add time in queue (DataDog/dd-trace-java#1481 )
* Minor upgrades (DataDog/dd-trace-java#1495 )
* Allow user to disable kafka time in queue tag (DataDog/dd-trace-java#1487 )
* Replace Set<Integer> with BitSet for HTTP statuses (DataDog/dd-trace-java#1496 )
* Register WeakMapProvider earlier in AgentInstaller (DataDog/dd-trace-java#1480 )
* Update codenarc (DataDog/dd-trace-java#1500 )
Co-authored-by: Tyler Benson <tyler.benson@datadoghq.com>
Co-authored-by: Nikolay Martynov <mar.kolya@gmail.com>
Co-authored-by: Richard Startin <richard.startin@datadoghq.com>
2020-06-02 18:20:54 +03:00
Anuraag Agrawal
9c63890d29
Intercept calls to ClientOverrideConfiguration to apply our instrumen… ( #453 )
2020-05-31 09:25:39 -07:00
Trask Stalnaker
35d4f61854
Remove printlns that were accidentally committed ( #459 )
2020-05-31 06:30:38 +03:00
Trask Stalnaker
359eb07445
Updates to reflect new repo name ( #454 )
2020-05-30 11:56:12 -07:00
Nikita Salnikov-Tarnovski
6aee3837d6
Fixes integration with latest version of Finatra ( #450 )
2020-05-28 11:53:41 -07:00
Trask Stalnaker
5c7e321521
Fix sporadic Elasticsearch test failures ( #444 )
2020-05-27 12:20:51 -07:00
Anuraag Agrawal
d4a14f6b98
Separate out core instrumentation for AWS SDK to allow manual setup o… ( #421 )
...
* Separate out core instrumentation for AWS SDK to allow manual setup of instrumentation.
* Instrumentation core test
2020-05-27 10:43:56 -07:00
Tyler Benson
b7ac69ee14
More refactoring for ScopeManager ( DataDog/dd-trace-java#1467 )
2020-05-26 11:54:59 -07:00
Richard Startin
d8c9639fbb
Grizzly-http and grizzly-client instrumentation ( DataDog/dd-trace-java#1365 )
2020-05-26 11:54:59 -07:00
Brian Devins-Suresh
67219faf25
Add version specific names to allow disabling only a specific version ( DataDog/dd-trace-java#1456 )
2020-05-26 11:54:56 -07:00
Brian Devins-Suresh
f0e19d6a83
Rename java packages for lettuce 4 and 5 to not have collisions ( DataDog/dd-trace-java#1450 )
2020-05-26 11:54:56 -07:00
Tyler Benson
dbe1c00ac1
Adding an option to manually disable Kafka headers ( DataDog/dd-trace-java#1448 )
2020-05-26 11:54:56 -07:00
Tyler Benson
c58d259459
Make Retrys consistent ( DataDog/dd-trace-java#1442 )
2020-05-26 11:54:55 -07:00
Tyler Benson
f74d249a2e
Migrate lettuce instrumentation away from deprecated finishSpanOnClose ( DataDog/dd-trace-java#1445 )
2020-05-26 11:54:55 -07:00
Tyler Benson
3bb17e1c3c
Remove deprecated usage from internal instrumentation ( DataDog/dd-trace-java#1441 )
2020-05-26 11:54:55 -07:00
Trask Stalnaker
e9096bb60d
Fix java google format ( #439 )
2020-05-26 08:42:48 +03:00
Nikita Salnikov-Tarnovski
6c8cd2e7f2
Change names of servlet based server spans ( #428 )
...
* Add documentation describing non-obvious points of Servlet instrumentations
* Change names of servlet based server spans
2020-05-25 12:53:12 -07:00
Nikita Salnikov-Tarnovski
a258f1424a
Fix khttp instrumentation in case of absent or read-only headers map ( #416 )
2020-05-20 13:47:25 -07:00
Nikita Salnikov-Tarnovski
cd68061cb2
Update docs about needing java 11 to build ( #412 )
2020-05-18 14:17:32 -07:00
Trask Stalnaker
f6e16c8f90
Bring back webflux client instrumentation ( #406 )
2020-05-18 13:06:18 -07:00
Nikita Salnikov-Tarnovski
fe8819fb8f
Support for khttp library ( #401 )
2020-05-17 10:41:41 -07:00
Nikita Salnikov-Tarnovski
6d0d3f54ce
Enable the following instrumentation by default: grizzly, jetty, spark-java ( #407 )
2020-05-17 10:19:35 -07:00
Nikita Salnikov-Tarnovski
6cfe2256ef
Use java 11 for compilation ( #390 )
...
* Allow compiling of everything with java 11
* Instruct CircleCI to use java 11 be default
* Forbid running some tests on java11
* Muzzle uses ClassLoader.platformClassLoader as parent for user-space classloader
2020-05-14 15:13:30 -07:00
Lev Priima
fbf31d3a39
Don't listen 0.0.0.0 in tests ( DataDog/dd-trace-java#1434 )
2020-05-14 11:50:31 -07:00
Tyler Benson
f540ae8fc1
Add null servlet context check ( DataDog/dd-trace-java#1414 )
2020-05-14 11:50:30 -07:00
Tyler Benson
6b359d11ec
Fix cassandra instrumentation to use a daemon thread ( DataDog/dd-trace-java#1422 )
2020-05-14 11:50:30 -07:00
Brian Devins-Suresh
6727764123
Netty 3.8 had the wrong version in the config property ( DataDog/dd-trace-java#1423 )
2020-05-14 11:50:30 -07:00
Richard Startin
95cac497d2
Replace collection.size() > 0 with not collection.isEmpty() ( DataDog/dd-trace-java#1420 )
2020-05-14 11:50:30 -07:00
Tyler Benson
5ecd8cb81e
Add instrumentation for okhttp 2.2+ ( DataDog/dd-trace-java#1402 )
2020-05-14 11:50:27 -07:00
Nikolay Martynov
c63b4fd9a3
Add scopes to http server response ( DataDog/dd-trace-java#1408 )
2020-05-14 11:49:44 -07:00
Brian Devins-Suresh
6f472a62a0
Fix projectreactor instrumentation to keep span context connected ( DataDog/dd-trace-java#1308 )
2020-05-14 11:49:44 -07:00
Trask Stalnaker
ab0c950140
Update a few last things to otel-java 0.4.0 ( #399 )
2020-05-11 22:17:16 -07:00
Simon Leigh
3a4483a0f5
Add support for jTDS driver connection urls for SQL Server ( #396 )
...
The jTDS driver is an open source JDBC driver for connecting to SQL Server databases.
Added support for parsing the url connection string so that spans can be generated for the sql statements using this driver.
Fixes #395
2020-05-09 19:07:31 -07:00
Nikita Salnikov-Tarnovski
e54f316b27
Add support for new @WithSpan annotation ( #379 )
2020-05-06 13:05:11 -07:00
Trask Stalnaker
6d1a58d151
Merge tag 'v0.50.0' into correct-history
2020-05-05 12:41:08 -07:00
Nikita Salnikov-Tarnovski
c9cf7ffb61
Make auto-instr work with latest otel-java snapshot ( #372 )
...
* Make auto-instr work with latest otel-java snapshot
* Add CircleCI workflow to run nightly test job against otel-java snapshot
* Decrease snapshot versions cache time
* Add comments suggest during review
* Add comments suggest during review
* Add missed helper class
* Use released otel-java 0.4.0
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2020-05-04 23:18:39 -07:00
Nikita Salnikov-Tarnovski
28eaeb9fed
Allow to disable auto-instrumentation for specified methods ( #369 )
...
Add new configuration property, `trace.methods.exclude`, which marks methods which should be excluded from instrumentation. This does not affect any arbitrary auto-instrumentation. Only auto-instrumentation guided by supported annotations (see `trace.annotations` config option and its default value in TraceAnnotationsInstrumentation#DEFAULT_ANNOTATIONS) and by `trace.methods` configuration property can be disabled using this new configuration.
2020-05-04 13:17:44 -07:00
John Bley
ca296b92fd
Normalize sql statements to elide literal numbers and strings. ( #366 )
...
* Normalize sql statements to elide literal numbers and strings.
* Missed one SlickTest sql normalization.
* Fix muzzle order for helper classes.
* Change name of feature flag
* Upgrade to latest spotless version in an attempt #1 to make the circleci build work.
* Attempt 2 to make circleci build happy - exclude build/generated/** from spotless.
* Attempt 3 to get circleci build working, adding *.java to the exclude line.
* Change exclude of generated files to include of just the src/ directory.
I confirmed that this properly failed the build if I remove a license header from a src/ directory.
2020-05-04 12:17:55 -07:00
Trask Stalnaker
fbbccd31a6
Add DataDog trace annotation ( #361 )
2020-04-28 17:21:55 -07:00
Trask Stalnaker
3c4a6b545c
Fix Ratpack instrumentation for newer versions of Guava. ( #360 )
...
Ratpack 1.4 should still work if you increase your guava version to 20+ (instead of 19).
Co-authored-by: Tyler Benson <tyler.benson@datadoghq.com>
2020-04-28 13:42:16 -07:00
Pontus Rydin
9568ba079b
Use Builder::setAttribute whenever possible ( #348 )
2020-04-27 13:51:34 -07:00
Trask Stalnaker
f9e74ac9c6
Fix some sporadic test failures ( #354 )
...
* Fix some sporadic test failures
* Improve Jetty test advice
* Fix smore sporadic test failures
* Improve test consistency
2020-04-27 11:40:27 -07:00
Trask Stalnaker
ccff07abb8
Prevent instrumentation from applying too broadly ( #337 )
2020-04-24 15:09:30 -07:00
Nikita Salnikov-Tarnovski
f958c2df2d
Add support for SignalFx and AppOptics tracing annotations ( #345 )
2020-04-23 21:21:25 -07:00
Trask Stalnaker
ce3d764ffa
Merge commit '437e0f343dcd66ac344556c03bd340ce791b1fdd' into correct-history
2020-04-21 12:55:51 -07:00
Sergei Malafeev
51cb8c6007
Add Cassandra Driver 4 instrumentation ( #334 )
2020-04-20 18:23:09 -07:00
Trask Stalnaker
ecc26226dc
Merge tag 'v0.49.0' into dd-merge
2020-04-18 16:00:00 -07:00
Trask Stalnaker
7f76929cd5
Rename resource name to span name ( #327 )
2020-04-16 12:13:42 -07:00
Trask Stalnaker
1f0cd54fd7
Remove copyright year from license header ( #322 )
...
* Update template
* Apply template
2020-04-15 11:24:44 -07:00
Trask Stalnaker
e8a451cbce
Remove unused service method ( #321 )
2020-04-15 10:17:04 -07:00
Trask Stalnaker
dc90ea7acb
Simplify Spring WebMVC decorator ( #324 )
2020-04-15 09:44:03 -07:00
Trask Stalnaker
262ab15fa8
Change aws-sdk span kind to INTERNAL ( #323 )
2020-04-15 09:16:24 -07:00
Trask Stalnaker
a333cfe536
Remove unused getComponentName ( #314 )
2020-04-14 13:29:33 -07:00
Trask Stalnaker
bf5b009ef8
Remove unused code ( #319 )
...
* Remove unused/deprecated code
* Remove unused code
* Remove unused return value
* Remove unnecessary throws clauses
* Remove unused code
* Remove default attribute value
* Remove unused code
* Remove unused code
* Remove unused code
* Remove unused constants
* Remove unused constant
* Remove unused parameter
* Remove unused PostMatchHook
* Remove unused constants
2020-04-14 12:29:24 -07:00
Trask Stalnaker
d94bf95bcf
Add db.url for jedis-1.4 and jedis-3.0 ( #316 )
...
* Add db.url for jedis-1.4
* Add db.url for jedis-3.0
2020-04-14 12:00:09 -07:00
Trask Stalnaker
d24159c8d2
Merge tag 'v0.48.0' into dd-merge
2020-04-12 15:20:10 -07:00
Trask Stalnaker
c545ffa3c2
Merge tag 'v0.47.0' into dd-merge
2020-04-06 13:26:15 -07:00
Trask Stalnaker
10d93ac2a0
Fix double log capture ( #299 )
2020-04-01 10:49:45 -07:00
Trask Stalnaker
64b9585306
Fix gRPC Context shading ( #297 )
2020-03-31 15:30:42 -07:00
Trask Stalnaker
4fe685d916
Remove component attribute ( #291 )
2020-03-29 20:32:19 -07:00
Trask Stalnaker
570fa012c0
Remove service.name attribute ( #290 )
2020-03-29 20:29:15 -07:00
Trask Stalnaker
2e210683fd
Update to OpenTelemetry API/SDK 0.3.0 ( #286 )
...
* Update gradle dependencies and module name
* Replace Tracer.withSpan() with currentContextWith()
* Update inject to 0.3.0
* Update extract to 0.3.0
* More updates
* Remove distributedcontext package refs
* Update OpenTelemetry API interoperability
* No need to call setNoParent()
setParent(SpanContext.getInvalid()) should give the same result.
2020-03-28 19:38:51 -07:00
Trask Stalnaker
2a738506a9
Better span names for aws-sdk ( #258 )
2020-03-25 09:07:33 -07:00
John Bley
55deb722cf
Populate db.url for MongoDB spans. ( #280 )
2020-03-24 15:42:03 -07:00
Trask Stalnaker
68bafd6e0c
Update instrumentation package names, A-J ( #266 )
2020-03-23 11:22:54 -07:00
Trask Stalnaker
c82baecb9d
Populate db.url for jdbc spans ( #277 )
2020-03-23 10:34:50 -07:00
Trask Stalnaker
96f89ecc48
Span name should not have http method ( #279 )
2020-03-23 09:52:20 -07:00
Trask Stalnaker
8fa84cb77b
Remove remaining resource.name attributes ( #278 )
...
* Remove resource.name validation from ignored tests
* Remove resource.name from test spans
* Remove unused parameter
* Change servlet dispatcher attribute name
2020-03-23 09:51:57 -07:00
Trask Stalnaker
d55a8b37d0
Add Metrics API bridge ( #276 )
2020-03-23 09:51:18 -07:00