Trask Stalnaker
ad0185d1c5
Update aws-java-sdk-2.2 to new agent api
2019-10-19 16:52:39 -07:00
Trask Stalnaker
09cdc177cf
Update aws-java-sdk-1.11.0 to new agent api
2019-10-19 16:52:39 -07:00
Trask Stalnaker
887633f086
Update apache-httpclient-4 to new agent api
2019-10-19 16:52:37 -07:00
Trask Stalnaker
9ffde5d261
Update apache-httpasyncclient-4 to new agent api
2019-10-19 16:40:52 -07:00
Trask Stalnaker
3b8a514364
Update akka-http-10.0 to new agent api
2019-10-19 16:40:52 -07:00
Trask Stalnaker
f67e3b98db
Migrate base decorators to new agent api
2019-10-19 16:40:52 -07:00
Tyler Benson
f734fc6661
Reduce tracer log line length - make name nicer
...
While “tracing.agent” matches the class name, this applies to the whole tracer where most things are labeled just “trace” (ie, config).
2019-10-18 17:01:26 -07:00
Laplie Anderson
d635e6d8a9
Merge pull request #1047 from DataDog/landerson/apache-httpclient-missing-methods
...
Add instrumentation for all of Apache HttpClient methods
2019-10-18 18:53:02 -04:00
Laplie Anderson
3ae2bc73d8
Add instrumentation for all of ApacheHttpClient methods
2019-10-18 12:55:23 -04:00
Tyler Benson
126dc67181
Update AgentApi to OT 0.32.0
2019-10-17 14:11:07 -07:00
Tyler Benson
557d45a9fe
Changes required for OT 0.32
...
This seems backwards compatable with 0.31 since all changes are additional, so this should be safe.
2019-10-17 13:54:56 -07:00
Laplie Anderson
6b2a4d996b
Add (failing) tests for methods that were not instrumented
2019-10-17 16:09:37 -04:00
Laplie Anderson
c8f3a26312
Merge pull request #1045 from DataDog/landerson/decorator-errors
...
Skip `@Decorator` classes when instrumenting
2019-10-17 16:02:54 -04:00
Laplie Anderson
f2c5ae2675
Latest version requires at least 1 bean
2019-10-17 14:48:51 -04:00
Laplie Anderson
8971040a45
Supertypes are not always available. Only check the current class for decorator
2019-10-17 13:42:38 -04:00
Laplie Anderson
6e0af7cdeb
Dont instrument `@Decorator`s or CDI breaks
2019-10-16 18:26:06 -04:00
Tyler Benson
7b6737f106
Make AgentTracer constructor private.
2019-10-15 16:12:48 -07:00
Tyler Benson
61151d425a
Changes requested in review
2019-10-15 16:03:02 -07:00
Tyler Benson
757961e014
Initial implementation of agent internal API.
2019-10-15 15:40:44 -07:00
Nikolay Martynov
ecc57ffcc5
`DDCachingPoolStrategy.size()` is not precise, use `find` instead
2019-10-11 09:00:16 -04:00
Tyler Benson
4679b07bb3
Decrease cache size and make soft values
...
Attempt to reduce memory overhead requirements. Based on feedback, it seems 10k was overly agressive. In memory constrained environments, use soft values to ensure the cache isn’t pushing usage over the limit.
2019-10-10 18:19:41 +02:00
cecile.terpin@gmail.com
526a9e2dfe
log level configuration tests - fct names codenarc
2019-10-10 09:41:59 +02:00
cecile.terpin@gmail.com
b6ad0382ba
log level configuration tests (2)
2019-10-09 18:07:18 +02:00
cecile.terpin@gmail.com
a08253d7ef
log level configuration tests
2019-10-09 17:56:29 +02:00
cecile.terpin@gmail.com
048864c090
new configuation key for setting debug log level
2019-10-09 17:56:29 +02:00
Tyler Benson
a6200f96c3
Upgrade Jackson to 2.10.0
...
This is primarily motivated by new CVE’s.
Upgrade jmxfetch to 0.32.1 which has the same change.
2019-10-09 12:04:45 +02:00
Douglas Q Hawkins
7dbad68fe4
Merge pull request #1014 from DataDog/dougqh/spring-data-support
...
Dougqh/spring data support
2019-10-08 17:45:51 +02:00
dougqh
63ef181032
Simplifying latestDepTest dependencies
2019-10-08 16:34:59 +02:00
Laplie Anderson
a20e6249a0
Merge pull request #1031 from DataDog/landerson/trace-annotation-async
...
Enable Async Propagation for @Trace Annotatation instrumentation
2019-10-08 15:58:50 +02:00
dougqh
3e6419d4f0
Fixing latestDepTest
2019-10-08 15:12:43 +02:00
dougqh
e696aa7da8
Test - no span for Object methods
...
Added a test case that confirms that no span is creating for Object methods on the repository
2019-10-08 14:29:07 +02:00
dougqh
01b92208d0
Clarifying comment
2019-10-08 13:47:11 +02:00
Laplie Anderson
d5021e0cbc
Add test case with netty
2019-10-08 13:43:26 +02:00
Tyler Benson
24632212e5
Merge pull request #1030 from DataDog/tyler/base-test
...
Extract base test class and move Config class changes there.
2019-10-08 10:44:55 +02:00
dougqh
5edff68c21
Propagating exception
2019-10-08 09:58:58 +02:00
dougqh
b01bef7a23
Merge branch 'master' into dougqh/spring-data-support
2019-10-08 09:38:55 +02:00
Tyler Benson
9ef3332140
Extract base test class and move Config class changes there.
2019-10-07 18:51:25 +02:00
Laplie Anderson
584f181abb
Fix OSGi bootstrap delegation property
2019-10-07 18:40:05 +02:00
Laplie Anderson
5719a783ad
Make trace annotation instrumentation async propagating
2019-10-07 18:29:26 +02:00
Nikolay Martynov
654e09ee7f
Merge pull request #1028 from DataDog/mar-kolya/update-bytebuddy
...
Update bytebuddy
2019-10-07 12:15:26 -04:00
Nikolay Martynov
0b32d65b29
Rename license file
...
New bytebuddy uses LICENSE file that causes build problems on case sensitive FS
2019-10-07 11:48:59 -04:00
Tyler Benson
1b40500ca2
Merge pull request #1017 from DataDog/tyler/jax-rs-async
...
Add support for jax-rs AsyncResponse
2019-10-07 10:50:34 -04:00
Nikolay Martynov
1e5f0ac935
Minor comment clarification
2019-10-07 08:55:27 -04:00
Nikolay Martynov
8e75eeb506
Update bytebuddy to 1.10.1
2019-10-07 08:27:13 -04:00
Tyler Benson
828e21123c
Remove debug println
...
Co-Authored-By: Laplie Anderson <randomanderson@users.noreply.github.com>
2019-10-07 14:19:46 +02:00
Tyler Benson
82180c2ea6
Add support for jax-rs AsyncResponse
2019-10-07 14:19:46 +02:00
Laplie Anderson
0d6fe9d267
Merge pull request #1022 from DataDog/landerson/spring-analytics
...
Change default for Spring and Ratpack analytics to be off
2019-10-07 05:07:31 -04:00
Laplie Anderson
b971a1ae25
Merge pull request #1021 from DataDog/landerson/couchbase-test-setup-spans
...
Another couchbase test race condition
2019-10-07 05:01:22 -04:00
Laplie Anderson
95ec44942f
Remove unused variables
2019-10-04 16:40:15 -04:00
Laplie Anderson
6f4ff22af2
Update tests to play nice with latest version
2019-10-04 15:48:33 -04:00
Laplie Anderson
831fa5c0fd
Disable ratpack events by default
2019-10-04 11:41:41 -04:00
Laplie Anderson
ecc2ee7955
Change default for spring analytics to be off
2019-10-04 11:41:41 -04:00
Laplie Anderson
6203091640
Wrap class setup spans in a trace for another race condition
2019-10-04 11:40:53 -04:00
dougqh
f785fb2314
Pin spring-kafka at 2.2
...
Pinning spring-kafka @ 2.2 to fix breaking changin in spring-kafka-test 2.3
2019-10-03 16:53:39 -04:00
dougqh
001d1d8282
codenarc
2019-10-02 14:39:20 -04:00
dougqh
dfcf9c6abd
Enabling spring-data integration in test
...
Enabling the spring-data integration in this test
Mostly, this introduces an extra span for the repository; however, it also connects some previously separate traces under the repository action.
2019-10-02 14:21:35 -04:00
dougqh
78f203638e
Introduced lazy proxy around DocRepository
...
To shift the set-up timing without adding a lot of ugly code (as I did previously), I introduced a lazy dynamic proxy around the repository.
I'm not really happy with this, but I consider it better than the prior approach. There is also probably a more "groovy" way to do this.
As before, this change is itself non-functional. The subsequent test will enable spring-data instrumentation and alter the test.
2019-10-01 17:44:31 -04:00
dougqh
85240a95ae
Revert "Changing test set-up timing"
...
This reverts commit 0dc63d7d3c
.
2019-10-01 16:16:52 -04:00
dougqh
0dc63d7d3c
Changing test set-up timing
...
@Shared runs before the spring-data instrumentation is enabled.
Switching to more explicitly set-up code to change the timing; however, this change doesn't enabled spring-data instrumentation to keep this non-functional.
2019-10-01 16:16:44 -04:00
dougqh
ec9e220f76
Cleaning up gradle file
...
After seeing the existing elasticsearch 5.3 spring data test, I decided to extend that instead.
However, I do think we need to revisit the best place for tests involving multiple pieces of instrumentation.
2019-10-01 14:07:23 -04:00
dougqh
02c2d43b80
spring-data -> spring-data-1.9
...
Changing directory name to spring-data-1.9 to reflect version restrictions as per review comments
2019-09-30 15:58:13 -04:00
dougqh
8b42d286e8
Removing unnecessary test code
...
Removing unnecessary test code left over from initial port integration
2019-09-30 14:21:24 -04:00
dougqh
aeef4f4203
Removing unused dependency
2019-09-30 14:20:49 -04:00
dougqh
3780cec4f2
Adding setAsync
...
Adding setAsync as per review comment
2019-09-30 13:50:53 -04:00
Tyler Benson
9771a6c90f
Merge pull request #1009 from DataDog/tyler/integ-core-update
...
Update integrations core submodule to 6.14.0
2019-09-27 15:25:22 -07:00
dougqh
1b1cc34ba5
Switching setResourceName -> setTag
...
Per view comment, switching setResourceName -> setTag
2019-09-27 16:01:50 -04:00
dougqh
48b701877a
googleJavaFormat
2019-09-27 13:55:32 -04:00
dougqh
b91648d0e3
googleJavaFormat
2019-09-27 09:40:32 -04:00
dougqh
ac557ed4ee
operationName -> resourceName
...
Addressing review comments: operationName -> resourceName
This was vestige of the original SignalFX code
2019-09-26 14:56:50 -04:00
dougqh
d192811419
Fixing muzzle version
2019-09-26 14:45:29 -04:00
dougqh
5cb0cc7c79
Preparing for ElasticSearch test
...
Adding spring-data-elasticsearch dependency just to make sure everything plays nice together
2019-09-26 09:57:40 -04:00
dougqh
56cebb1c0b
Switched to extending JpaRepository
...
Switched to extending JpaRepository rather than CrudRepository, so that multiple spring data integrations can coexist.
Since JpaRepository redefines findAll, this required one update to the test. The other references to CrudRepositopry remain unchanged since JpaRepository extends CrudRepository without redefining those methods.
2019-09-26 09:46:53 -04:00
dougqh
4d287c63bf
googleJavaFormat
2019-09-26 09:31:28 -04:00
dougqh
45f6edfa6e
/ -> .
2019-09-26 09:30:04 -04:00
dougqh
eb05fc7bc4
Adjusting support version of spring-data
...
Rather than using a somewhat ugly solution of implementing both postProcess method signatures.
I'm restricting the integration to newer versions (1.9 - Sept 2014) of spring-data to start.
2019-09-26 09:29:45 -04:00
Tyler Benson
088878f1d0
Use tracer from field instead of GlobalTracer
2019-09-25 19:04:46 -07:00
dougqh
3b14a1cacd
Simplify @Bean annotation
2019-09-25 17:05:59 -04:00
dougqh
1e8af55d57
Fixed typo
2019-09-25 16:57:24 -04:00
dougqh
64a5fd61f9
Tinkering with version compatibility
...
RepositoryProxyPostProcessor has different method sigs depending on the version of spring-data-commons.
As stop gap implemented both signatures, but probably need to split spring-data support by version.
2019-09-25 16:50:45 -04:00
dougqh
59416bf521
Prefix with Jpa
2019-09-25 16:24:27 -04:00
dougqh
682cc40a32
PersistenceConfig -> JpaPersistenceConfig
2019-09-25 16:03:11 -04:00
dougqh
d0cf564f07
spring -> spring.jpa
...
Moved spring to spring.jpa to make room for other spring data integrations.
2019-09-25 15:59:43 -04:00
dougqh
64e3ebca88
Adding license clause
2019-09-24 10:32:20 -04:00
dougqh
02c7e5b98b
Renamed variable
...
Renamed transactionalMethod to just method, since this is no longer tied to spring-tx
2019-09-23 16:32:57 -04:00
dougqh
680c4426bc
Changing muzzle spec to depend on spring-data again
2019-09-23 16:14:56 -04:00
dougqh
a242e088de
codeNarc - removed unused import of @Shared
2019-09-23 15:54:44 -04:00
dougqh
8a89547004
googleJavaFormat
2019-09-23 15:29:15 -04:00
dougqh
6b5acc8386
New Approach - instrument RepositoryFactorySupport
...
This revised version targets spring-data RepositoryFactorySupport rather than spring-tx
This is accomplished by injecting a RepositoryProxyPostProcessor during construction that adds a datadog specific MethodIntercptor.
In the end, this functions similarly to the tx support in that it uses a widely scoped MethodInterceptor.
This required some changes to the test as well. The old test set-up the repository before the instrumentation was fully-enabled. Enabling the instrumentation earlier capture extra traces where Spring JPA performs metainfo queries.
2019-09-23 15:26:18 -04:00
Laplie Anderson
31a7ce9b5b
Explicitly cleanup the spans for each test
2019-09-20 18:32:48 -04:00
Tyler Benson
668649f62e
Update integrations core submodule to 6.14.0
...
https://github.com/DataDog/integrations-core/tree/6.14.0
https://github.com/DataDog/integrations-core/search?q=jmx_metrics
2019-09-20 12:19:44 -07:00
Tyler Benson
8289ccd085
Skip CompletableFuture case in Java 7
2019-09-20 12:11:30 -07:00
Tyler Benson
363dd38d81
Add CompletableFuture$ThreadPerTaskExecutor to allow list
...
This allows trace propagation for CompletableFuture’s asyncPool even if `useCommonPool` is disabled.
Also added some additional futures to `WHITELISTED_FUTURES` and sorted list.
2019-09-20 11:08:10 -07:00
Laplie Anderson
e6c061f841
Merge pull request #996 from DataDog/landerson/couchbase-op-id
...
Add operation id and network tags to Couchbase
2019-09-19 15:56:59 -04:00
Laplie Anderson
18e4b5e9fd
Remove unnecessary muzzle
2019-09-19 15:38:53 -04:00
Tyler Benson
40a7ef6086
Merge pull request #1005 from DataDog/tyler/additional-executors
...
Fix async dispatch for Jetty QueuedThreadPool
2019-09-19 12:15:37 -07:00
Laplie Anderson
607f1b0a86
Merge pull request #1003 from DataDog/landerson/cleaner-test-fix
...
Cleaner test timeout fix
2019-09-19 15:02:35 -04:00
Nikolay Martynov
53b02fb333
Merge pull request #1002 from DataDog/mar-kolya/enable-tests-for-java13
...
Enable tests for java13
2019-09-19 12:28:00 -04:00
Nikolay Martynov
43603e970c
Disable Log4j1 tests for java versions without '.'
...
Log4j1 seems to be broken on those.
2019-09-19 08:27:56 -04:00
Tyler Benson
de44a0651c
Fix async dispatch for Jetty QueuedThreadPool
...
Includes additional cleanup to supported executors list (removed anonymous classes).
2019-09-18 20:08:06 -07:00
Laplie Anderson
d564ff937a
Cleaner test timeout was too low
2019-09-18 18:06:27 -04:00
Laplie Anderson
43cbf7a16a
Split traces and add timeout to blockUntilChildSpanFinished
2019-09-18 17:14:52 -04:00
Laplie Anderson
85ffafcd06
Updates based on pull request comments
2019-09-18 10:29:24 -04:00
Tyler Benson
2086664f6d
Reduce overhead of URLAsResourceName decorator
...
Using `new URL()` just to parse the path out was rather expensive. This should improve the situation.
2019-09-17 18:50:01 -07:00
Tyler Benson
80185f76f4
Enable async propagation in JAX annotation span
2019-09-17 11:35:10 -07:00
Laplie Anderson
0774933414
All couchbase tests have to be runUnderTrace for sorting
2019-09-17 13:53:03 -04:00
Nikolay Martynov
cfd96850e0
Merge pull request #998 from DataDog/mar-kolya/avoid-unnecessary-objects-in-apache-client-instrumentation
...
Avoid unnecessary objects creation in Apache Http Client instrumnentation
2019-09-17 12:16:10 -04:00
Nikolay Martynov
e9fc866e67
Add optimization to apache async client instrumentation
2019-09-17 11:47:57 -04:00
Tyler Benson
f14bfe7803
Merge pull request #990 from DataDog/tyler/spring-web
...
Migrate spring-web to base httpserver test
2019-09-17 08:24:37 -07:00
dougqh
7c5e74bdf0
Cleaning-up decorator
...
The SpringDataDecorator is really for Spring transactions including non-DB related transactions.
The SpringDataDecorator never really implemented DB or ORM support anyway, since most of the methods just returned null.
Changing the decorator to just extend ClientDecorator instead. Also rename to reflect its true purpose.
2019-09-17 10:51:30 -04:00
Nikolay Martynov
0748c10b72
Avoid unnecessary objects creation in Apache Http Client instrumnentation
2019-09-17 10:19:38 -04:00
dougqh
172ff747cb
Updating muzzle spec
...
Switching muzzle to target spring-tx rather than spring-data (which is logical given the instrumentation point)
Also added extraDependency on aopalliance
This restricts the support the Spring 2.5 when spring-tx & spring-aop using aopalliance were introduced.
2019-09-17 10:06:43 -04:00
dougqh
e43baf82be
Renaming advice class
...
Renaming advice class to more accurately reflect what is being instrumented
2019-09-17 09:27:39 -04:00
dougqh
85389b48d8
Google Format
2019-09-17 08:24:57 -04:00
dougqh
0c3e0579b2
Switching to instrumenting transaction support
...
After experimenting with RepositorySupport$QueryExecutorMethodInterceptor switched to TransactionInterceptor.
QueryExecutorMethodInterceptor was too narrowly scoped and didn't capture the UPDATE or DELETE statement. TransactionInterceptor captures everything, but is still a bit more broadly applicable than I'd like.
2019-09-17 08:19:42 -04:00
Laplie Anderson
8376d83aef
Caching affects network tags
2019-09-16 18:34:23 -04:00
Laplie Anderson
111c44d2da
State can be GCd before exit advice is run
2019-09-16 17:58:29 -04:00
Laplie Anderson
62ea7a59fb
Cant test cross compile because the 2.6 instrumentation gets activated
2019-09-16 17:37:34 -04:00
Laplie Anderson
e244ea633d
Add operation id and network tags to couchbase
2019-09-16 16:59:29 -04:00
dougqh
122533fde6
Switching to simple concat for efficiency
2019-09-16 11:08:37 -04:00
Laplie Anderson
6a40938fe4
Split remove test into two parts
2019-09-13 18:56:00 -04:00
Laplie Anderson
d3ec72922e
Increasing the timeout may fix the spurious failures
2019-09-13 18:35:21 -04:00
Laplie Anderson
fee58e07f2
Original merge
2019-09-13 17:48:22 -04:00
Laplie Anderson
d063b42491
Revert "Couchbase Async Subscriptions"
2019-09-13 11:51:52 -04:00
Laplie Anderson
e8d6928a8c
Dont share environment. Slower but more deterministic
2019-09-12 21:48:36 -04:00
Laplie Anderson
4e5e75ebff
Fix tests
2019-09-12 20:51:50 -04:00
Tyler Benson
407c973029
Migrate spring-web to base httpserver test
...
Unfortunately 404 test was not consistent and non-trivial to adapt. I also couldn’t get the validation tests to work well either. Revisit if we have time to dig deeper into spring.
2019-09-12 17:28:12 -07:00
Laplie Anderson
6c445ad030
Extract RxJava instrumentation from Hystrix and add to Couchbase
2019-09-11 19:25:08 -04:00
Laplie Anderson
a5b5b0c307
Failing tests WIP
2019-09-11 19:25:08 -04:00
Laplie Anderson
df0838070a
Extract span assertion from couchbase tests
2019-09-11 19:25:08 -04:00
dougqh
d2ba6af80c
Removing unneecessary dependencies
...
Removing dependencies rendered redundant by clean-up in datadog repo - as per review comment
2019-09-11 14:29:34 -04:00
Tyler Benson
e895d7c3a7
Merge pull request #983 from DataDog/tyler/cache-soft-refs
...
Optimize DDCachingPoolStrategy
2019-09-11 09:41:48 -07:00
dougqh
ab52988ced
Removing "Modified by SignalFx"
2019-09-11 11:33:14 -04:00
dougqh
60e9cc249c
Removing "Modified by SignalFx"
...
Removing "Modified by SignalFx" comments, since our integration is current the same.
Added a comment to SpringJpaTest explaining the differences.
2019-09-11 11:23:49 -04:00
dougqh
7a366f0f01
Added explanatory comments to test
...
Added some explanatory comments for each span -- might turn these into assertions later
Primary aim was to understand the differences from the signalfx fork. They seem to stem deviations in the underlying JDBC integration.
2019-09-11 09:55:40 -04:00
Laplie Anderson
07b58e1cf4
Merge pull request #957 from DataDog/landerson/instrumentation-module-check
...
Java 9 Modules Smoketest
2019-09-10 19:56:12 -04:00
Tyler Benson
988b03b2f3
Optimize DDCachingPoolStrategy
...
Reduce default cache size in EvictingCacheProvider, and return a NoOp CacheProvider when classloader is going to be skipped.
2019-09-10 15:52:37 -07:00
dougqh
1335296975
Fixing mismatches in spans collected by signalfx fork & datadog
...
There are two main differences...
- "hsqldb" vs "spring-data" as the root test service name
- an extra seemingly spurious sql span in signalfx
2019-09-10 17:42:49 -04:00
dougqh
6d38831252
Merge branch 'master' into dougqh/spring-data
...
Tweak partially picked from signalfx -- that commit included same other unwanted changes in this file and others (see 636c23ed2c
)
2019-09-10 17:40:36 -04:00
Tyler Benson
42545a0906
Remove synchronization from RateByServiceSampler
...
This change avoids lock contention in a hot code path.
I also added double check locking in ClassLoaderMatcher to reduce the need of locking there.
2019-09-10 12:44:13 -07:00
Ryan Fitzpatrick
5f7e0609ed
Initial spring data instrumentation
2019-09-10 15:13:20 -04:00
Tyler Benson
0681739ceb
Merge pull request #980 from marcoferrer/grpc-interceptor-error-tag
...
Fix span error tagging in grpc server interceptor
2019-09-09 15:58:47 -07:00
Marco Ferrer
bcfb2ac3e7
run formatter
2019-09-06 19:58:57 -04:00
Marco Ferrer
8ee5d8ddc0
assert status code tag in streaming tests
2019-09-06 19:17:36 -04:00
Marco Ferrer
f587011238
add TracingServerCall to helper class names
2019-09-06 18:48:44 -04:00
Marco Ferrer
57e03cc9ea
update tests for new tags
2019-09-06 18:42:40 -04:00
Marco Ferrer
61d85d997a
add comments for tracing call forwarder
2019-09-06 18:42:11 -04:00
Marco Ferrer
b0074495f9
update tests for server error tag
2019-09-06 16:35:19 -04:00
Marco Ferrer
b547886a0d
introduce tracing call forwarder
2019-09-06 14:58:58 -04:00
Marco Ferrer
6ac07abe2b
fix span error tagging in grpc server interceptor
2019-09-06 12:25:31 -04:00
Tyler Benson
cd6dcf393b
Apply fixed default operation name for @Trace generated spans
...
This should help reduce issues with multiple top level spans.
2019-09-05 16:21:27 -07:00