Will Gittoes
b40483c974
Add "hibernate" as the primary instrumentation name
2019-03-11 14:07:26 +11:00
Tyler Benson
c500d4b236
Migrate OkHttp Instrumentation to Decorators
2019-03-08 15:12:29 -08:00
Tyler Benson
576e554445
Migrate Mongo to Decorator
2019-03-05 20:50:06 -05:00
Will Gittoes
7ed7ce7518
Fix muzzle
2019-03-06 10:39:46 +11:00
Will Gittoes
01f4666ac4
Simplify testing multiple session implementations
2019-03-06 10:28:18 +11:00
Will Gittoes
e05429a9ff
Rename to hibernate-5
2019-03-06 10:12:52 +11:00
Will Gittoes
00865dab88
Review comments: Replace un-needed instrumentation by just propagating scope not spans
2019-03-06 10:05:21 +11:00
Nikolay Martynov
d054790161
Merge pull request #754 from DataDog/mar-kolya/increase-docker-timeout
...
Increase docker container timeout in tests to help with stability on …
2019-03-04 14:40:27 -05:00
Nikolay Martynov
9272f88fe6
Increase docker container timeout in tests to help with stability on underpowered machines running builds
2019-03-04 11:59:41 -05:00
Tyler Benson
084c2eb51f
Migrate Netty instrumentation to Decorator
2019-03-04 08:16:25 -08:00
Will Gittoes
9e3fda549d
More codenarc fixes
2019-03-01 13:53:51 +11:00
Will Gittoes
644d26f4a9
Change muzzle tests
2019-03-01 12:53:51 +11:00
Tyler Benson
e098e6bd64
Migrate kafka instrumentation to Decorator.
2019-02-28 16:27:31 -08:00
Will Gittoes
e6d593eabe
JAXB deprecated from default Java classpath in later JVMs, but required for tests
2019-03-01 10:49:49 +11:00
Nikolay Martynov
65cb8af873
Fix tests that verify that cancelling job cancels continuation
2019-02-28 18:44:39 -05:00
Tyler Benson
339784c4eb
Merge pull request #744 from DataDog/tyler/jms-decorator
...
Migrate JMS instrumentation to Decorator
2019-02-28 15:32:31 -08:00
Tyler Benson
1f60904321
Merge pull request #743 from DataDog/tyler/jetty-decorator
...
Migrate Jetty instrumentation to Decorator
2019-02-28 14:59:45 -08:00
Will Gittoes
afc517f0c3
Review comments
2019-03-01 09:42:07 +11:00
Tyler Benson
fc40c9617a
Migrate JSP instrumentation to Decorator
...
Remove span kind and type from generated spans since these classify more as specialized @Trace spans.
2019-02-28 14:30:28 -08:00
Tyler Benson
5668e6006f
Migrate Jetty instrumentation to Decorator
2019-02-28 13:54:37 -08:00
Tyler Benson
50b4e1623e
Migrate JMS instrumentation to Decorator
2019-02-28 13:52:29 -08:00
Tyler Benson
50279d64fe
Span type should only be an attribute and not inherited
...
Previously we were inheriting from the parent and also often setting as a tag.
Apply default span assertion to verify the spanType is being checked properly. (Include error state too.)
2019-02-28 12:39:51 -08:00
Nikolay Martynov
3029d3d85c
Merge pull request #741 from DataDog/mar-kolya/tomcat-classloadin-instrumentation
...
Add instrumentation for Tomcat webapp classloading
2019-02-28 13:48:40 -05:00
Nikolay Martynov
aa031cc708
Add instrumentation for Tomcat webapp classloading
2019-02-28 12:58:08 -05:00
Tyler Benson
d53d3fe4c8
Add @Retry to tests that fail randomly in CI.
...
Should eventually revisit this to try and remove them.
Latest failure was on:
```
at ExecutorInstrumentationTest.#poolImpl '#name' reports after canceled jobs(ExecutorInstrumentationTest.groovy:202)
```
2019-02-27 20:56:47 -08:00
Will Gittoes
093387bb01
Review comments and additional testing
2019-02-28 11:04:31 +11:00
Tyler Benson
9c9e74e0d0
Missing helpers
2019-02-27 13:37:03 -08:00
Tyler Benson
a413b0d08d
Review changes.
2019-02-27 12:39:03 -08:00
Tyler Benson
1644de3969
Migrate Jax-rs client instrumentation to Decorator
2019-02-27 09:40:08 -08:00
Tyler Benson
4e9449db81
Migrate Jax-rs annotation instrumentation to Decorator
2019-02-27 09:40:08 -08:00
Tyler Benson
cd9dc94b24
Migrate Hystrix instrumentation to Decorator
2019-02-27 09:40:08 -08:00
Tyler Benson
34242e4849
Migrate method tracing instrumentation to Decorator
2019-02-27 09:40:08 -08:00
Tyler Benson
d842612697
Migrate Jedis/Lettuce instrumentation to Decorator
2019-02-27 09:04:52 -08:00
Will Gittoes
c0e5baebda
Support stored procedures
2019-02-27 16:17:27 +11:00
Will Gittoes
044ff75e07
Neaten decorator pattern a bit
2019-02-27 09:35:10 +11:00
Tyler Benson
c46909e59f
Migrate JDBC instrumentation to Decorator
2019-02-26 11:16:35 -08:00
Tyler Benson
99f2d97cd5
review fixes
2019-02-26 08:32:43 -08:00
Tyler Benson
a33b6ddaa0
Implement trace origin header and propagation support
2019-02-26 08:26:31 -08:00
Tyler Benson
e17e029540
Merge pull request #732 from DataDog/tyler/httpurlconnection-decorator
...
Migrate HttpURLConnection instrumentation to Decorator
2019-02-26 08:13:46 -08:00
Tyler Benson
0aba752787
Merge pull request #726 from blockmar/hystrix-tags
...
Hystrix metadata added to tags and Command Group included in resource name
2019-02-26 08:05:56 -08:00
Will Gittoes
079fcd6a56
Use a Dectorator for the Hibernate instrumentation
2019-02-26 17:31:42 +11:00
Will Gittoes
8985d6fd07
Merge branch 'master' into willgittoes-dd/hibernate-integration
2019-02-26 12:03:08 +11:00
Will Gittoes
8ffb9a63b0
Add hibernate.Criteria instrumentation
2019-02-26 12:02:40 +11:00
Tyler Benson
678df7b43d
Migrate HttpURLConnection instrumentation to Decorator
2019-02-25 14:48:15 -08:00
Tyler Benson
adb2eb9b55
Migrate gRPC instrumentation to Decorator
2019-02-25 13:17:28 -08:00
Anders Blockmar
8d601b7f0d
Get methodName directly by annotation. Applied Google formatting.
2019-02-25 09:45:10 +01:00
Will Gittoes
b95ff2eb8e
Hibernate: instrument querying
2019-02-25 10:17:14 +11:00
Tyler Benson
2f3f2d4e04
Merge pull request #728 from DataDog/tyler/static-import-decorators
...
Rename and static import decorators instance
2019-02-22 15:51:21 -08:00
Tyler Benson
461e01270c
Merge pull request #729 from DataDog/tyler/license-cleanup
...
Remove unnecessary license checker
2019-02-22 15:28:02 -08:00
Tyler Benson
93e38f6f0d
Rename and static import decorators instance
...
In the instrumentation it reads better.
2019-02-22 13:44:34 -08:00
Tyler Benson
7e82f5b197
Remove unnecessary license checker
2019-02-22 13:42:43 -08:00
Tyler Benson
db47fde8d1
Group Elasticsearch instrumentation into common folder
...
Also migrate to decorator.
2019-02-22 13:28:11 -08:00
Tyler Benson
f04d113ecb
Make decorators public and add tests
2019-02-22 09:42:53 -08:00
Anders Blockmar
5c9ddd6923
POC for hystrix metadata as tags in Hystrix Instrumentation
2019-02-22 15:59:32 +01:00
Tyler Benson
dd35372a72
Add Cassandra decorator
2019-02-21 15:43:12 -08:00
Tyler Benson
9c8e689b6d
Add decorator for couchbase instrumentation
2019-02-21 15:27:26 -08:00
Tyler Benson
8f9ea87ef6
Merge pull request #723 from DataDog/tyler/aws-decorators
...
Migrate AWS SDK instrumentation to decorators
2019-02-21 12:37:05 -08:00
Tyler Benson
0d9e6ad97a
Merge pull request #722 from DataDog/tyler/akka-apache-decorators
...
Akka and Apache HttpClient migrate to decorators
2019-02-21 12:27:53 -08:00
Tyler Benson
fb304a110d
Migrate AWS SDK instrumentation to decorators
2019-02-21 12:11:42 -08:00
Tyler Benson
dfe5cb57b2
Servlet migrate to decorators
2019-02-20 17:35:41 -08:00
Tyler Benson
13e708ec42
Akka and Apache HttpClient migrate to decorators
2019-02-20 17:02:05 -08:00
Tyler Benson
a98c22ac3a
Introduce base decorators
2019-02-20 16:11:18 -08:00
Tyler Benson
a7ebc9b3db
Deprecate WEB_SERVLET type
2019-02-20 08:42:39 -08:00
Nikolay Martynov
dd7981871f
Limit ES-rest tests to 6.x.x versions
...
It looks like beta 7.x.x was released and our instrumentation doesn't
work with it at the moment.
2019-02-14 17:43:44 -05:00
Nikolay Martynov
8e1382b4e4
Improve webflux integration
...
Add support for tracing Mono/Flux
2019-02-14 16:59:59 -05:00
Nikolay Martynov
13005d72cb
Add reactor-core instrumentation
2019-02-14 16:59:56 -05:00
Will Gittoes
7481a141c4
Added instrumentation to attach State to all Query objects, so they can be instrumented
2019-02-13 22:13:32 +11:00
Will Gittoes
b68563f5d1
Make tests work for StatelessSession as well as Session
2019-02-13 15:08:53 +11:00
Tyler Benson
e019fcbda5
Instrument SharedSessionContract instead of Session
2019-02-12 16:53:09 -08:00
Will Gittoes
180ba619a2
Move SessionFactory instrumentation into its own class
2019-02-13 10:32:09 +11:00
Will Gittoes
984f6aff68
Tests for Session methods
2019-02-12 17:22:43 +11:00
Will Gittoes
cd2467c76b
Use a generic Session MethodAdvice to instrument all synchronous Session methods; also support re-entrant Session methods
2019-02-12 17:01:37 +11:00
Nikolay Martynov
bae2d7dde8
Allow non-wrapped tasks in disabled executors
...
Some executors cannot handle tasks that have been wrapped into
`{Runnable,Callable}Wrapper` because they require certain subclass of
`{Callable,Runnable}` in order to work. We have a test that
effectively disables instrumentation for such executors.
This change makes sure that tasks that do not need to be
wrapped (which essentially means anything that is not lambda) still
get traced in such executors. One notable example of affected executor
type is `ScheduledThreadPoolExecutor`.
2019-02-11 11:47:34 -05:00
Will Gittoes
724a59c347
Get initial hibernate tests working
2019-02-11 20:55:28 +11:00
Will Gittoes
e8f0eaf85e
Add basic Hibernate integration
2019-02-11 14:47:21 +11:00
Nikolay Martynov
3a0a471dd5
Close future's continuation on cancel even if future itself was not cancelled
2019-02-08 20:13:32 -05:00
Nikolay Martynov
931e6ff8af
Merge pull request #688 from DataDog/mar-kolya/webflux-fixes
...
Fix webflux integration to not rely in active span
2019-02-07 12:45:50 -05:00
Nikolay Martynov
a46d6a2e8f
Use config inheritance in `withConfigOverride`.
...
This moves us forward to abstract 'Config' and away from depending in
specific config data source (e.g. system properties).
2019-02-05 15:51:05 -05:00
Tyler Benson
12e7efc0b9
Review fixes
2019-02-05 11:58:36 -08:00
Tyler Benson
bbcd2f6949
Move other Utils to utils package
2019-02-05 11:43:05 -08:00
Tyler Benson
6aa371d790
Encapsulate config override reflection
2019-02-05 11:30:07 -08:00
Tyler Benson
6cebabbada
Move integrations config to Config class.
2019-02-05 08:20:49 -08:00
Tyler Benson
1a54e8179a
Add setting to set service name by domain for http clients
...
This will allow better metric collection and identification of trends for individual services/hosts.
This is not enabled by default because it can result in a high cardinality of services.
2019-02-05 08:20:49 -08:00
Nikolay Martynov
a086f38f2f
Fix webflux integration to not rely in active span
...
Netty event loop instrumentation doesn't allow us to attribute work to
correct span so we have to maintain that manually.
2019-02-05 10:38:21 -05:00
Nikolay Martynov
f84e510f3e
Increase timeouts in JMS test to try to make it more stable
2019-02-05 10:10:49 -05:00
Nikolay Martynov
b25784e7a2
Make test results in netty-4.0 client tests more readable
2019-02-04 15:39:42 -05:00
Will Gittoes
99e4e52600
Fix style
2019-02-01 09:29:05 +11:00
Will Gittoes
a44b59bb14
Hard-code Hystrix operation (span) name, leaving the resource name dynamic
2019-01-31 14:30:08 +11:00
Will Gittoes
57bae1688e
Review comments
2019-01-31 09:15:30 +11:00
Will Gittoes
56aaccb0c2
Remove commented code
2019-01-30 17:42:41 +11:00
Will Gittoes
f15a2ffd79
Add support for ES rest client 6.3 and above
2019-01-30 17:39:20 +11:00
Nikolay Martynov
ee3788bfdc
Merge pull request #672 from DataDog/mar-kolya/more-forkjoin-instrumentations
...
More ForkJoin instrumentations
2019-01-28 14:01:03 -05:00
Nikolay Martynov
f8aed7aec7
Provide seprate instrumentation names for Akka and Scala ForkJoin instrumentations
2019-01-28 11:29:59 -05:00
Nikolay Martynov
f7844f763c
Instrument Akka and Scala ForkJoinTask and ForkJoinPool
2019-01-25 16:15:48 -05:00
Nikolay Martynov
a3219639a0
netty 4.0: improve request uri parsing
2019-01-25 15:58:25 -05:00
Nikolay Martynov
d4943eb2b6
netty 4.0: do not modify headers in aws request
2019-01-25 15:58:22 -05:00
Nikolay Martynov
5029660418
netty 4.0: consolidate netty config names
2019-01-25 15:50:28 -05:00
Nikolay Martynov
b3ad700b34
Merge pull request #666 from DataDog/mar-kolya/aws-sdk2
...
Initial AWS2 SDK instrumentation
2019-01-25 13:01:32 -05:00
Nikolay Martynov
a0dee2cd88
Merge pull request #674 from DataDog/mar-kolya/catch-exception-in-servlet-context-getter
...
Catch exception in servlet context getter.
2019-01-25 12:55:32 -05:00
Nikolay Martynov
4fb94b8368
AWS2 SDK: Remove class loader matcher that is no longer needed
2019-01-25 12:53:00 -05:00
Nikolay Martynov
4ba0adfab3
Catch exception in servlet context getter.
...
Request may finish after check has been perform but before context has
been read leading to exception in some implementations.
2019-01-25 12:28:58 -05:00
Nikolay Martynov
62402a6426
AWS SDK2 instrumentation
2019-01-25 12:02:31 -05:00
Nikolay Martynov
04fbb5085f
Improve OSGi class loader instrumentation
...
It turns out that Eclipse's OSGi implementation has two problems:
* It doesn't respect system properties by default
* It has tricky classloader implementation that loads bootstrap
classes from the classloader-has-delegation-to-bootstrap check but
doesn't load bootstrap classes from 'normal' code.
This should address second problem and make Eclipse's OSGi
implementation 'safe' by default.
2019-01-25 08:52:07 -05:00
Nikolay Martynov
76999fc9f9
Improve AWS1.x SDK integration
...
For AWS11.x SDK make sure that http client span is actually a child of
aws span.
2019-01-24 17:28:03 -05:00
Nikolay Martynov
7b0e3ffd1c
netty 4.1: consolidate netty config names
2019-01-24 17:28:03 -05:00
Nikolay Martynov
cb1313ea9a
netty 4.1: do not modify headers in aws request
2019-01-24 17:28:03 -05:00
Nikolay Martynov
07d10e2374
netty 4.1: improve request uri parsing
2019-01-24 17:28:03 -05:00
Nikolay Martynov
6ab5b121f5
Handle ForkJoinTask in concurrent instrumentation
2019-01-24 17:28:00 -05:00
Nikolay Martynov
af15b17f1c
Remove unnecessary helper from FutureInstrumentation
2019-01-23 22:31:59 -05:00
Tyler Benson
0a89074f60
Merge pull request #653 from marcoferrer/instrument-kt-coroutine-scheduler
...
Add support for instrumenting kotlin coroutine schedulers
2019-01-22 10:31:32 -08:00
Marco Ferrer
5096ac35b6
address ci errors
2019-01-21 14:12:44 -05:00
Marco Ferrer
7819430620
add mavenCentral to plugin repos
2019-01-21 12:26:46 -05:00
Marco Ferrer
d7319cd76d
add tests for kt cancellation and channels
2019-01-21 11:59:54 -05:00
Andrew Kent
5f70ebfec5
Merge pull request #657 from DataDog/ark/fix-log-manager-test-race-condition
...
Play nice with Java's LogManager across all JVMs
2019-01-18 19:50:12 +00:00
Tyler Benson
fe3ebceba9
Add jackson smile dep for old ES tests.
2019-01-16 13:27:04 -05:00
Andrew Kent
6ffaa9e04f
Remove jre logging integration
2019-01-16 08:59:10 -08:00
Nikolay Martynov
1b1f620318
Improve Vertx test stability
...
By actiually waiting for test server to start listening.
2019-01-11 12:14:17 -05:00
Marco Ferrer
63c28cef31
add kotlin test config to java-concurrent project
2019-01-09 19:20:31 -05:00
Marco Ferrer
a31abc67e9
add support for instrumenting kotlin coroutine schedulers
2019-01-09 19:04:42 -05:00
Nikolay Martynov
354cbfcb2d
Concurent instrumentation tests: block thread before starting tracing
...
Otherwise blocking thread is pretty much useless since we may still
get spans if threads are executed quickly enough.
2019-01-08 12:30:18 -05:00
Nikolay Martynov
06bd670f0a
Remove unused class
2019-01-08 12:30:10 -05:00
Nikolay Martynov
93b018b4cc
Use port 61 for unused port in akka tests
...
This port is in low range and is not assigned so nothing should really
be listening on it on any host.
2019-01-08 12:04:50 -05:00
Tyler Benson
7da0cc7f50
Merge pull request #645 from DataDog/tyler/instrumenter-signature
...
Apply proper generic signature for Instrumenter.Default transformers()
2019-01-07 14:18:52 -08:00
Tyler Benson
c18b299606
Also exclude test coverage from instrumentation
2019-01-04 15:25:36 -08:00
Tyler Benson
6d7415fed2
Don’t run coverage on projects that use shadow
...
It was breaking on dd-java-agent where it has duplicate classes across different jars. These projects are excluding everything anyway.
2019-01-04 15:25:36 -08:00
Tyler Benson
fe52180bfc
Apply proper generic signature for Instrumenter.Default transformers()
...
Previously it was missing the MethodDescription portion.
2019-01-04 15:25:12 -08:00
Tyler Benson
93116e4e12
Avoid downloading so many AWS dependencies for the entire SDK
...
Only specify the deps we need for the tests.
2019-01-04 13:42:51 -08:00
Nikolay Martynov
d02e0d8e47
Fix akka latest dep test failure
2019-01-03 19:13:48 -05:00
Nikolay Martynov
ad2d5d6cb7
Merge pull request #638 from DataDog/mar-kolya/fix-akka-101
...
Fix Akka 10.1 support
2018-12-28 13:30:42 -05:00
Nikolay Martynov
be919a0145
Fix Akka 10.1 support
2018-12-28 13:12:33 -05:00
Tyler Benson
82dcc3ce6c
Merge pull request #629 from DataDog/ark/jmx-tagging
...
Add languages tag to jmx/runtime tags
2018-12-28 09:34:20 -08:00
Tyler Benson
8b910b46d1
Update tests for `language` tag in root span
2018-12-27 16:00:47 -08:00
Tyler Benson
3ef347f00f
Use safeHasSuperType instead of isSubTypeOf
2018-12-27 10:33:43 -08:00
Tyler Benson
471d8c4410
Properly capture callable statement queries
...
CallableStatement is a sub type of PreparedStatement. Previously we were only matching methods that returned exactly PreparedStatement.
2018-12-21 14:03:33 -08:00
Andrew Kent
e9f1436522
Additional continuable-scope tests
2018-12-19 17:12:58 -08:00
Andrew Kent
2861d87071
slf4j MDC autoinjection integration
2018-12-19 17:09:00 -08:00
Andrew Kent
4dc3528097
Add post-match hook to default instrumenter api
2018-12-19 17:07:43 -08:00
Andrew Kent
0b92413d4a
Move JvmBootstrapTest into a fork inside a groovy test
2018-12-12 20:17:48 -08:00
Andrew Kent
d0120b9419
Assert logger constructor exists before applying instrumentation
...
This adds muzzle functionality to the logger
instrumentation. Assertions are manually set up because auto-creation
of references is not possible for non-default instrumenters.
2018-12-12 20:01:52 -08:00
Andrew Kent
0240ad5154
Move default instrumentation declarations to Instrumenter.Default
2018-12-11 18:01:40 -08:00
Andrew Kent
1004ee4ef7
Patch java.util.logging.Logger for safe use with jmxfetch
2018-12-11 17:26:02 -08:00
Gary Huang
70b60939f4
Merge pull request #622 from DataDog/gary/fix-ratpack-test
...
Fix Flaky Ratpack Fork Test
2018-12-09 15:27:44 -05:00
Gary Huang
a04b30107f
Change scope handling
2018-12-07 12:40:18 -05:00
Nikolay Martynov
cb419997af
Merge pull request #623 from DataDog/mar-kolya/jms-test-improvements
...
Small improvement for jms tests to hopefully make them more stable
2018-12-07 11:58:29 -05:00
Nikolay Martynov
c1e21e328b
Small improvement for jms tests to hopefully make them more stable
2018-12-07 09:40:29 -05:00
Gary Huang
26c354dad2
Fix Flaky Ratpack Fork Test
...
Ratpack tests occasionally fail with the handler span and manually started span out of order. This will ensure that if a span is manually started inside of the handler then it will be finished after the handler span is finished, which is when the request has been responded to.
2018-12-07 00:49:37 -05:00
Gary Huang
2c85b5cbb8
Restore RabbitMQ latestDepTest to use latest version
...
Since spring-rabbit no longer uses a dependency with a snapshot build.
2018-12-07 00:16:03 -05:00
Nikolay Martynov
30712cdc87
Merge pull request #617 from DataDog/mar-kolya/java-concurrent-test-cleanup
...
Remove unused variable from AsyncChild classes
2018-12-05 12:35:19 -05:00
Nikolay Martynov
2e9b20ceb5
Remove unused variable from AsyncChild classes
2018-12-05 11:53:19 -05:00
Tyler Benson
94a3f7bb2b
Merge pull request #616 from DataDog/tyler/grpc
...
Enable gRPC instrumentation by default.
2018-12-04 14:28:58 -08:00
Nikolay Martynov
7cd3438d6b
Merge pull request #613 from DataDog/mar-kolya/improve-httpurl-connection
...
Improve HttpUrlConnection instrumentation
2018-12-04 17:12:01 -05:00
Tyler Benson
43e8c70098
Enable gRPC instrumentation by default.
2018-12-04 14:11:57 -08:00
Nikolay Martynov
0a3ecc1b90
Improve HttpUrlConnection instrumentation
...
Make sure we get one span per request
2018-12-04 16:54:48 -05:00
Tyler Benson
6cb9e0360d
Merge pull request #612 from DataDog/tyler/jms
...
Remove duplicate JMS spans from nested calls.
2018-12-04 11:25:56 -08:00
Tyler Benson
013e57c677
Add tests for Spring JMS Template
2018-12-04 10:54:53 -08:00
Nikolay Martynov
66570a2135
Add some synchronization into ES tests to make them more stable
2018-12-04 12:15:44 -05:00
Tyler Benson
3be4bbb7f0
Merge pull request #608 from DataDog/tyler/upgrades
...
Update misc versions.
2018-12-03 15:07:36 -08:00
Tyler Benson
74743be6e5
Remove duplicate JMS spans from nested calls.
2018-12-03 11:15:28 -08:00
Andrew Kent
20b726bca7
Merge pull request #609 from DataDog/ark/aws-muzzle-ranges
...
Simplify AWS muzzle ranges
2018-11-30 18:53:05 +00:00
Tyler Benson
983077d150
Move mock/assert deps out of common dependencies
2018-11-30 10:02:26 -08:00
Andrew Kent
91f1bef6f4
Simplify AWS muzzle ranges
...
AWS Muzzle workaround is no longer needed with latest muzzle
optimizations.
2018-11-29 16:18:14 -08:00
Nikolay Martynov
2e8dc9d08f
Fix Ratpack tests that got broken by ExecutorInstrumentation refactoring
...
It turns out closing continuation also closes parent span. This is not
very good in cases when we end up not using continuation if
continuation in a state has already been setup.
This patch provides way to close continuation in a way that doesn't
affect parent scope.
2018-11-29 15:21:46 -08:00
Nikolay Martynov
4ec5ca394c
Add code to wrap future returned by submit(Runnable) call
2018-11-29 15:18:46 -08:00
Nikolay Martynov
ad98ebc01f
Add some comments and some other minor CR tweaks
2018-11-29 15:18:46 -08:00
Nikolay Martynov
118a61cc67
Add field backed context provider
2018-11-29 15:18:46 -08:00
Nikolay Martynov
b89e73b3c0
Switch executor instrumentation to use context storage
2018-11-29 15:18:46 -08:00
Tyler Benson
442323d4d1
Add catch so instrumentation errors don’t interrupt primary execution.
2018-11-29 13:14:12 -08:00
Tyler Benson
c9ec9ebd0f
Add guard against null values in extract adapter.
2018-11-29 13:06:01 -08:00
Tyler Benson
ae063e8a14
Add additional 404 tests for spring boot.
...
This one succeeds in applying routing, but returns a 404 response.
2018-11-29 11:32:49 -08:00
Tyler Benson
785860b6a7
Add null check for envelope in consumer delegate
2018-11-29 11:22:32 -08:00
Tyler Benson
2f319b9301
Consumer delegate should rethrow the exception
...
Previously the delegate would swallow the exception and not rethrow.
I also added a test to attempt to verify, but the exception doesn’t seem to be observable in the test.
(See #602 )
2018-11-28 08:36:15 -08:00
Nikolay Martynov
e87d4ef161
Servlet3 instrumentation race consition fixes
...
* Do not set `asyncPropagate` on scope since it will be closed anyway.
* Close span once done with it in `TagSettingAsyncListener`.
* No point in explicit finishing span in 'finishOnClose' scope.
* Do not reattach listener in
`TagSettingAsyncListener#onStartAsync`. Listener is attached each
time by `Servlet3Advice#stopSpan` and reattaching listener in
`TagSettingAsyncListener#onStartAsync` causes multiple listeners to
be attached and race conditions to happen.
* Do not close span in `AsyncContextInstrumentation`. This leads to
span being written prematurely. This span will be closed in
`TagSettingAsyncListener` anyway, along with adding proper status code.
2018-11-27 17:17:56 -08:00
Tyler Benson
e46ab1d01d
Merge pull request #600 from DataDog/tyler/threadpool-errors
...
Improve error handling for ThreadPoolExecutorInstrumentation
2018-11-27 15:24:58 -08:00
Tyler Benson
4199f924ac
Remove ES-transport instrumentation from rest test
...
It is generating an extra trace/span that in a realistic scenario would be generated by the server, not the client.
2018-11-27 13:02:44 -08:00
Tyler Benson
468ccab99a
Improve error handling for ThreadPoolExecutorInstrumentation
...
If other exceptions are thrown when trying to test the queue, it generates lots of log noise. This should handle it better.
2018-11-27 11:28:44 -08:00
Nikolay Martynov
6f61ddc67d
Merge pull request #594 from DataDog/mar-kolya/es-tests-stability
...
Improve stability of ES tests by avoiding unpredictable spans
2018-11-26 22:50:43 -08:00
Gary
90777f4b39
Retire/remove version scan
...
Remove version scan dead code and unnecessary classLoaderMatcher methods in instrumentations. Depends on #572
2018-11-26 18:21:56 -05:00
Gary
477c2f92c8
Address comments and add onClose callback on context to close scope.
2018-11-26 17:26:48 -05:00
Gary
50c2af9abb
remove classloader matcher
2018-11-26 16:57:12 -05:00
Gary
4169e42cdc
replace version scan with muzzle block
2018-11-26 16:55:33 -05:00
Gary
6475f20308
Refactor Ratpack
...
Remove the use of the OT project and Execution managed scopes. Updated tests.
2018-11-26 16:55:18 -05:00
Nikolay Martynov
467f14c359
Small fix in ES tests
2018-11-26 13:07:42 -08:00
Nikolay Martynov
23203fb659
Improve stability of ES tests by avoiding unpredictable spans
2018-11-23 09:43:41 -05:00
Nikolay Martynov
7dae6df890
In kafka latest deps test make sure that kafka version matches kafka client libs
...
This seems to help with compatibility
2018-11-22 21:02:05 -05:00
Nikolay Martynov
fdffee8f5c
Fix Hysrix test to not poll queue and return null
...
Instead wait for value to appear
2018-11-21 16:25:34 -05:00
Nikolay Martynov
2852a6a97a
Fix setup so springweb tests produce appropriate logs
2018-11-21 16:03:19 -05:00
Nikolay Martynov
590ed30f56
Limit Jedis latest dep tests to 2+ versions of Jedis
...
Jedis 3 seems to have incompatible API changes
2018-11-21 11:43:13 -05:00
Nikolay Martynov
a70da1d995
Remove redundant tests from SparkJava
...
Tests that create traces and do not assert on them may leave traces
behind for the next test causing errors.
2018-11-20 17:26:29 -05:00
Nikolay Martynov
ca0a4a4458
Do not check ES document version in Sping test
...
ES may do things that change this version unexpectedly
2018-11-20 14:46:30 -05:00
Nikolay Martynov
cd9ab3daef
Merge pull request #587 from DataDog/mar-kolya/set-netty-continuation-once
...
Set netty continuation only once
2018-11-20 13:19:45 -05:00
Nikolay Martynov
165f05beba
Set netty continuation only once
...
Also remove continuation when getting it
2018-11-20 12:19:53 -05:00
Nikolay Martynov
228e7e0d21
Better handle Jetty async calls
...
Do same thing we do for servlets
2018-11-19 14:17:01 -05:00
Tyler Benson
e4a12409c8
Add recursive servlet dispatch tests.
2018-11-16 14:40:35 -08:00
Tyler Benson
e96752bbad
Remove need for tomcat user file config
2018-11-16 09:56:42 -08:00
Tyler Benson
817895b559
Extract shared tests into abstract parent
2018-11-16 09:22:47 -08:00
Tyler Benson
cde02e1ae5
Fix servlet async dispatch
...
Finish existing trace and propagate to the next request.
Improve dispatch testing.
2018-11-16 08:55:11 -08:00
Tyler Benson
3835157c4f
Merge pull request #577 from DataDog/tyler/spring-auth
...
Set user.principal in a way spring security can be covered
2018-11-16 08:52:42 -08:00
Tyler Benson
1064e35788
Apply standard tag name and update spring-web test deps version.
2018-11-16 08:06:40 -08:00
Tyler Benson
31b2e0f9b0
Merge pull request #578 from DataDog/tyler/components
...
Apply component tag more consistently
2018-11-15 13:02:39 -08:00
Nikolay Martynov
465e237522
Do not set component in AWS instrumentation that later get rewritten anyway
2018-11-15 13:21:49 -05:00
Tyler Benson
6126d6632e
Add vertx latestDepTest
2018-11-15 09:58:21 -08:00
Nikolay Martynov
6f05cff023
Add test for UrlConnection error on file protocol
2018-11-15 12:31:42 -05:00
Tyler Benson
cbb29069fe
Apply component tag more consistently
2018-11-14 11:31:40 -08:00
Tyler Benson
0bb20abfce
Set user.principal in a way spring security can be covered
...
Improve tests.
2018-11-14 11:30:05 -08:00
Tyler Benson
5381461da2
Apply limits for Elasticsearch
...
6.5 has api changes that break our tests.
2018-11-14 10:55:18 -08:00
Tyler Benson
b58b54dab9
Limit Lettuce/Webflux versions and fix test for tomcat 9+
2018-11-12 12:33:34 -08:00
Tyler Benson
51dfd2b184
Fix latestDepTests for Jetty
2018-11-12 11:05:02 -08:00
Tyler Benson
5e194ef06c
Fix latestDepTests for Kafka Streams, Netty, and Okhttp
2018-11-12 08:15:24 -08:00
Gary
a2a194d48a
Fix latestDepTest for JSP instrumentation.
...
Normalize jsp.requestUrl tag value because Tomcat 9 seems to add relative path symbols of jsp files.
Tomcat 9 doesn't automatically create a connector, causing failures in latestDepTest. Tomcat 9 also seems to have small changes that effect some of the tests, such as changing the exception type and also removal of the exception message in one of the tests.
2018-11-12 08:15:24 -08:00
Tyler Benson
9bd2b86d2e
Add assertion to ensure latestDepTest dependencies are different from test.
2018-11-12 08:15:24 -08:00
Gary
9d7d40565a
Limit AMQP LatestDepTest to use last working version
...
Makes AMQP LatestDepTest not use the latest version because it uses a snapshot version of spring, causing error when downloading.
2018-11-09 11:09:04 -05:00
Nikolay Martynov
9c652cc5b2
Remove duplicate class names from ExecutorInstrumentation
2018-11-05 12:55:32 -05:00
Nikolay Martynov
b8276ac70b
Specify Scala dependency in single place
2018-11-05 12:55:32 -05:00
Nikolay Martynov
98df97af3e
First iteration on a better context store api
...
Separate context storage from actual fetching/putting
2018-11-02 10:46:57 -04:00
Nikolay Martynov
13a8add2e7
Merge pull request #559 from DataDog/mar-kolya/add-lost-jdbc-statement-logging
...
Catch `AbstractMethodError` when trying to unwrap jdbc connection
2018-11-01 11:50:44 -04:00
Nikolay Martynov
15024915bf
Catch `AbstractMethodError` when trying to unwrap jdbc connection
...
jdts throws this exception since they just have 'stub' umplementation.
2018-11-01 09:57:18 -04:00
Nikolay Martynov
e83c379992
Merge pull request #557 from DataDog/mar-kolya/add-lost-jdbc-statement-logging
...
Add logging in jdbc instrumentation when we cannot unwrap connection
2018-10-31 15:55:03 -04:00
Nikolay Martynov
8a066de772
Add logging in jdbc instrumentation when we cannot unwrap connection
2018-10-31 13:38:37 -04:00
Andrew Kent
6198662984
Merge pull request #555 from marcoferrer/grpc-tracing-kotlin-exception-support
...
Catch and log throwables to support kotlin exception handling
2018-10-31 03:44:15 +00:00
Marco Ferrer
1bd97a0f90
catch and log throwables to support kotlin exception handling
2018-10-30 23:00:29 -04:00
Andrew Kent
5824eb83b8
Merge pull request #537 from DataDog/ark/instrumentation-context-outline
...
instrumentation context map-backed impl
2018-10-29 18:48:23 +00:00
Nikolay Martynov
ff9e5ba99f
Increase couchbase timeout
...
It looks like Couchbase is often really slow to start.
2018-10-26 17:08:36 -04:00
Nikolay Martynov
aba0c3377d
Use offer instead of add when trying to test-insert element into the queue on ThreadPoolExecutor instrumentation
2018-10-24 15:13:40 -04:00
Nikolay Martynov
faad1d92b0
Clarify output of Hystrix test
2018-10-24 15:13:21 -04:00
Tyler Benson
041b9c30d4
Fix failing test from master.
2018-10-23 17:35:00 +10:00
Nikolay Martynov
4e6f179a7a
Merge pull request #543 from DataDog/mar-kolya/jmxfetch-additional-tags
...
Add config for tags that propagate to JMXFetch and spans
2018-10-22 20:56:56 -04:00
Nikolay Martynov
34372533c1
Add config for tags that propagate to JMXFetch and spans
...
Also add runtime-id tag to root span and JMXFetch metrics
2018-10-22 15:51:20 -04:00
Tyler Benson
192b0fd478
misc minor changes
2018-10-22 10:44:04 +10:00
Gary Huang
9b3019c612
Merge pull request #487 from DataDog/gary/muzzle-aws-sdk
...
Muzzle AWS SDK Instrumentation
2018-10-19 15:31:25 -04:00
Tyler Benson
78c6f881ed
Merge pull request #535 from DataDog/tyler/rabbit
...
Add instrumentation for RabbitMQ’s AMQP library
2018-10-19 23:26:50 +10:00
Tyler Benson
b693335ef5
Add routing key to resource name for publish command.
2018-10-19 13:19:50 +10:00
Tyler Benson
97dd303909
Don’t change resource name of span unless it’s for Rabbit.
2018-10-19 12:27:34 +10:00
Tyler Benson
64595cf485
Add type hints and parent assertion
2018-10-19 11:51:57 +10:00
Tyler Benson
7ece2fe2a6
Prevent exchange name being overwritten in publish resource name.
2018-10-19 10:25:32 +10:00
Tyler Benson
80f160be72
Merge pull request #539 from DataDog/mar-kolya/increase-netty-timeout
...
Increase request timeout in netty client tests
2018-10-19 09:34:14 +10:00
Nikolay Martynov
a5d8c3fc7d
Increase request timeout in netty client tests
...
Otherwise requests timeout and tests fail
2018-10-18 16:19:24 -04:00
Andrew Kent
131074c255
Move InstrumentationContext api to bootstrap
2018-10-18 10:16:15 -07:00
Gary
21fa1430c8
add comment about choice of version
2018-10-18 09:28:43 -04:00
Gary
796ce20ca6
split muzzle ranges into blocks to avoid OOM in ci
2018-10-18 09:28:41 -04:00
Gary
fadf676b6e
Combining AWS instrumentations. Test for both 1.11.0 and 1.11.106 since builder was not available in 1.11.0.
2018-10-18 09:28:39 -04:00
Gary Huang
254f721baf
Muzzle AWS SDK Instrumentation
...
Add muzzle blocks and remove class loader matcher methods.
2018-10-18 09:28:37 -04:00
Tyler Benson
8ff5c7c36c
Review fix comments and version range.
2018-10-18 16:08:37 +10:00
Tyler Benson
be205010c1
Add additional retries for ES tests.
2018-10-18 11:00:52 +10:00
Andrew Kent
b02ed4e813
Initial Map-backed implementation and test
2018-10-17 15:29:59 -07:00
Nikolay Martynov
e74d054291
Add tests for Vertx HTTP client
2018-10-17 14:47:31 -04:00
Nikolay Martynov
739f2d0daa
Add tests for vertx HTTP server
2018-10-17 14:47:28 -04:00
Tyler Benson
8ffeb5bedf
Add instrumentation for RabbitMQ’s AMQP library
2018-10-17 16:32:24 +10:00
Nikolay Martynov
fc11f199b7
Improve netty4.1 server tests
2018-10-15 16:50:02 -04:00
Nikolay Martynov
a4a1c70393
Enable all 8+ JVMs for netty-4.1 tests
2018-10-15 15:26:36 -04:00
Andrew Kent
7330ceaf4e
Instrumentation Context outline for HttpURLConnection as an example
2018-10-15 11:05:23 -07:00
Tyler Benson
6b0e43b32d
Merge pull request #529 from DataDog/tyler/dropwizard
...
Integration for Dropwizard Views
2018-10-15 14:58:37 +10:00
Tyler Benson
432ce89a07
Add assertTraces to AgentTestRunner with implied argument
...
This will also help with auto complete when writing tests.
2018-10-15 10:19:00 +10:00
Tyler Benson
14846a79df
Add Dropwizard-views instrumentation
2018-10-11 14:39:04 +10:00
Tyler Benson
ebf0d86734
Add Muzzle testing for dropwizard-client
2018-10-11 14:21:39 +10:00
Gary Huang
3c0d6494ca
Merge pull request #483 from DataDog/gary/muzzle-servlet-2
...
Muzzle servlet-2 Instrumentation
2018-10-05 12:30:07 -04:00
Qiyang Huang
a0170dbc69
Add fail block for servlet 2
2018-10-05 12:06:47 -04:00
Gary Huang
c7eb667c0e
Muzzle servlet-3 Instrumentation
...
Add muzzle block and remove class loader matcher method.
2018-10-05 12:06:45 -04:00
Gary Huang
eb5f33094b
Merge pull request #519 from DataDog/gary/enable-spymemcached
...
Enable Spymemcached instrumentation by default
2018-10-05 12:03:43 -04:00
Nikolay Martynov
f71192266c
Rework the way multi-jvm tests work
...
To allow some JVMs runs only subset of tests
2018-10-02 13:20:19 -04:00
Nikolay Martynov
1299141ff6
Enable akka instrumentation by default
2018-10-02 10:20:25 -04:00
Tyler Benson
929bc3b690
Merge pull request #521 from DataDog/tyler/apache-http
...
Refactor Apache HttpClient Instrumentation.
2018-10-01 14:59:35 -04:00
Tyler Benson
6fdcfc783a
Keep operation name the same
2018-10-01 14:28:14 -04:00
Nikolay Martynov
55c2935a19
Remove some hacks that were made for Gradle 4.10.1
2018-10-01 13:40:17 -04:00
Tyler Benson
8b822ff26d
Fix AWS tests and change span type to http-client
...
There seems to be a bug. I would expect the aws span to be the parent of the apache http span, but that is not the case.
Removed the now unused HTTPComponent decorator.
2018-09-28 21:23:30 -04:00
Gary
2312c13aa2
restore classLoaderMatcher to make instrumentation safer
2018-09-28 20:45:22 -04:00
Gary Huang
80b4a9790c
Fix versions range
2018-09-28 20:45:20 -04:00
Gary Huang
c7e8755492
Muzzle servlet-2 Instrumentation
...
Add muzzle block and remove class loader matcher method.
2018-09-28 20:45:18 -04:00
Tyler Benson
4eb0cd4097
Refactor Apache HttpClient Instrumentation.
...
Removes the need for DDTracingClientExec.
Reduces extra spans.
Does not include a span for each redirect.
Compatible with 4.0+ instead of just 4.3+.
2018-09-28 17:52:39 -04:00
Gary
79d3327475
Enable Spymemcached instrumentation by default
2018-09-28 14:51:10 -04:00
Gary Huang
cbaf61af04
Merge pull request #492 from DataDog/gary/muzzle-sparkjava
...
Muzzle and Expand Spark Java Instrumentation
2018-09-27 22:47:15 -04:00
Gary Huang
7ecc49a228
Merge pull request #509 from DataDog/gary/muzzle-spy-memcached
...
Muzzle Spymemcached
2018-09-27 22:44:56 -04:00
Andrew Kent
707685ed66
Merge pull request #516 from DataDog/mar-kolya/use-okhttputils
...
Use OkHttpUtils in more places
2018-09-26 19:32:49 -07:00
Gary
33ab8d0072
Expand instrumentation version range and rename package
2018-09-26 22:31:23 -04:00
Qiyang Huang
fe6ee07aad
Add assert inverse
2018-09-26 22:31:21 -04:00
Gary Huang
e937e4322b
Muzzle Spark Java Instrumentation
...
Add muzzle block.
2018-09-26 22:31:14 -04:00
Nikolay Martynov
419b859324
Remove classloaders instrumentation
...
This is dead code that is not used
2018-09-26 17:33:30 -04:00
Nikolay Martynov
5d627733d8
Use OkHttpUtils in more places
2018-09-26 15:07:20 -04:00
Gary
827b721ae4
add comment about build vs muzzle versions
2018-09-26 14:26:58 -04:00
Nikolay Martynov
84bef23698
Increase timeouts in Couchbase to make tests more stable
2018-09-26 13:47:37 -04:00
Nikolay Martynov
d48eb4de77
Decouple Groovy version from Gradle
...
And use newer Groovy and Spock
2018-09-26 13:47:34 -04:00
Nikolay Martynov
dfba97273c
lock version of spring-data-es to avoid upgrading ES to 6.x.x in 5.3 instrumentation
2018-09-24 14:59:25 -04:00
Tyler Benson
76876e7d9e
Merge pull request #443 from DataDog/tyler/executor-instrumentation
...
Allow executor tracing to flow across distinct executors
2018-09-23 10:12:56 +10:00
Andrew Kent
bf24e5d5d0
Merge pull request #511 from DataDog/tyler/es-extract-index
...
Cleanup created indexes to allow RetryOnFailure
2018-09-21 11:21:33 -07:00
Tyler Benson
a14945f6e0
Cleanup created indexes to allow RetryOnFailure
2018-09-21 14:44:14 +10:00
Tyler Benson
2174f21d61
Allow executor tracing to flow across distinct executors
...
Otherwise any async work is lost after the first executor jump.
2018-09-21 11:12:19 +10:00
Tyler Benson
72b2873ec1
ScheduledThreadPoolExecutor doesn’t actually work separately
...
It was only working because it extends from ThreadPoolExecutor, but it uses a backing queue type that is incompatible. Scheduled execution submits to the work queue directly and will bypass the exisiting instrumentation.
2018-09-20 16:33:49 +10:00
Tyler Benson
3d78afbc2c
Disable Executor instrumentation ThreadPoolExecutor instances
...
If we can’t add generic runnables to the queue.
This won’t solve the problem for all cases, but it will help with some.
Tests forthcoming.
2018-09-20 16:06:01 +10:00
Tyler Benson
c84c83f168
Merge pull request #501 from DataDog/tyler/gradle-upgrade
...
Upgrade gradle to 4.10.1
2018-09-20 10:51:50 +10:00
Tyler Benson
21f4806d08
Merge pull request #506 from DataDog/tyler/es-tlc
...
Remove elasticsearch.request.description
2018-09-20 10:45:36 +10:00
Gary Huang
89d83663c7
Merge pull request #493 from DataDog/gary/muzzle-datastax-cassandra
...
Muzzle and Expand Cassandra Instrumentation
2018-09-19 16:38:06 -04:00
Gary Huang
622db5942b
Merge pull request #486 from DataDog/gary/muzzle-jetty
...
Muzzle Jetty Instrumentation
2018-09-19 16:07:19 -04:00
Gary Huang
4db131b415
Merge pull request #488 from DataDog/gary/muzzle-jms
...
Remove version scan from JMS Instrumentation
2018-09-19 16:06:41 -04:00
Gary Huang
ba8efa5bc6
Merge pull request #498 from DataDog/gary/muzzle-mongo
...
Muzzle Mongo Instrumentations
2018-09-19 15:31:34 -04:00
Qiyang Huang
347002c0f6
Muzzle Spymemcached
...
Add muzzle block and remove class loader matcher method.
2018-09-19 14:37:25 -04:00
Tyler Benson
ebcc2ef052
Add work around for scala compile issue.
2018-09-19 15:13:42 +10:00
Tyler Benson
9dad0fb4d6
Separate out latestDepTests
2018-09-19 15:10:26 +10:00
Tyler Benson
72f2036dc7
Remove retry from some tests
...
Index creation fails the next time around.
2018-09-19 14:57:37 +10:00
Tyler Benson
ea97996df7
Remove elasticsearch.request.description
...
It seems to potentially have sensitive contents, so removing to be safe.
2018-09-19 14:55:23 +10:00
Tyler Benson
2b93aa7cbf
Fix ES version ranges.
2018-09-19 14:51:38 +10:00
Tyler Benson
e11ab12284
Better error handling for older JDBC drivers
...
that don’t support unwrapping (pre JDK 1.6).
2018-09-18 16:46:08 +10:00