Commit Graph

345 Commits

Author SHA1 Message Date
Trask Stalnaker bfc7a0de55 More general class loading instrumentation 2020-02-13 11:31:45 -08:00
Trask Stalnaker c43f3229c6 Merge commit '25534b2641ff57e0de36fb359a412612ef349ee9' into dd-merge-part-2 2020-02-12 17:59:03 -08:00
Trask Stalnaker 852c00193c Merge commit 'f2d8c8e6b9967b204803a3744942582191266625' into dd-merge 2020-02-12 15:35:23 -08:00
Trask Stalnaker d3f6c87bf1
More general class loading instrumentation (#152) 2020-02-12 12:08:47 -08:00
Nikolay Martynov fd58187994 Support JFR profiling 2020-02-11 14:55:19 -05:00
Tyler Benson 75c7769192 Reduce tracer thread count by combining scheduled executors into a single executor.
Pulls out utility classes for reuse by other projects.

This also meant the dependency had to be bundled with dd-trace-ot since it isn't published as a separate dependency.
2020-02-10 10:45:58 -08:00
Trask Stalnaker cd4a97546e
Rename boostrap and tooling modules (#146)
* Rename agent-bootstrap module to auto-bootstrap

* Rename agent-tooling module to auto-tooling

* Further renames
2020-02-07 17:01:55 -08:00
Trask Stalnaker efed5ae682
Standardize instrumentation module names (#145)
* Rename vertx module

* Rename glassfish module

* Rename google-http-client module

* Rename jms module

* Rename twilio module

* Move dropwizard-testing to top-level

Since it's not related to dropwizard-views.

* Rename dropwizard-views modules

* Rename aws-java-sdk-1.11.0 module

* Rename apache-httpasyncclient-4 module

* Rename apache-httpclient-4 module

* Rename datastax-cassandra-3 module

* Rename elasticsearch:rest-5 module

* Rename elasticsearch:transport-2 module

* Rename elasticsearch:transport-5 module

* Rename elasticsearch:transport-6 module

* Rename grizzly-2 module

* Rename jax-rs-annotations-1 module

* Rename jax-rs-annotations-2 module

* Rename filter-jersey module

* Rename jetty module

* Rename lettuce-5 module

* Rename okhttp-3 module

* Rename play-ws-1 module

* Rename play-ws-2 module

* Rename rxjava-1 module

* Rename request-2 module

* Rename request-3 module

* Rename spring-webflux-5 module
2020-02-07 16:34:36 -08:00
Trask Stalnaker 794ccd0e6b
Rename java agent artifact (#137)
* Fix config to not rely on module alpha order

* Rename java-agent module to opentelemetry-auto
2020-02-06 16:03:24 -08:00
Trask Stalnaker 54cb6dc538
Bring back Kafka Streams, RabbitMQ, and AWS Java SDK 2.2 instrumentation (#109)
* Bring back Kafka Streams instrumentation

* Bring back AWS Java SDK 2.2 instrumentation

* Bring back RabbitMQ instrumentation

* Make kafka streams instrumentation more future proof
2020-02-04 10:41:39 -08:00
Trask Stalnaker 2b11b37d0f
Remove trace-api artifact (#116)
* Remove unused Trace annotations

* Remove Trace annotation from benchmark code

* Remove Trace annotation from instrumentation tests

* Remove Trace annotation from smoke tests

* Remove Trace annotation from agent tests

* Remove Trace annotation from testing tests

* Remove Trace annotation from hystrix tests

* Remove Trace annotation from netty tests

* Remove Trace annotation from webflux tests

* Remove Trace annotation from reactor tests

* Remove unnecessary conditional

* Remove Trace annotation from trace annotation instrumentation

* Remove Trace annotation from akka http tests

* Remove Trace annotation from java concurrent tests

* Delete Trace annotation

* Move classes out of trace-api

* Remove trace-api artifact

* Move trace-api classes to better packages
2020-02-01 13:07:51 -08:00
Trask Stalnaker e4b8c579b2
Change netty-*, play-*, rabbitmq, ratpack, rmi, jms instrumentation to use OpenTelemetry API directly (#102)
* Fix gRPC conversion to OpenTelemetry API

* Fix Akka conversion to OpenTelemetry API

* Convert JMS to use OpenTelemetry API directly

* Convert Netty 4.0 to use OpenTelemetry API directly

* Convert Netty 4.1 to use OpenTelemetry API directly

* Convert Play 2.4 to use OpenTelemetry API directly

* Convert Play 2.6 to use OpenTelemetry API directly

* Convert Play WS 1 to use OpenTelemetry API directly

* Convert Play WS 2 to use OpenTelemetry API directly

* Convert Play WS 2.1 to use OpenTelemetry API directly

* Convert RabbitMQ to use OpenTelemetry API directly

* Convert Ratpack to use OpenTelemetry API directly

* Convert RMI to use OpenTelemetry API directly
2020-01-29 11:19:23 -08:00
Trask Stalnaker 26355485d9
Move OpenTelemetry SDK out of the bootstrap loader (#86)
* Move OpenTelemetry SDK out of bootstrap loader

* Improve shading

After this change, the shaded opentelemetry-sdk is only used by test
modules, so it doesn't need to be published.
2020-01-27 11:11:05 -08:00
Laplie Anderson 68e52497d6 Move to versioned folder name 2020-01-23 10:51:38 -05:00
Laplie Anderson 4e58643bd0 Initial finatra instrumentation 2020-01-22 18:09:10 -05:00
Trask Stalnaker 819ca7c256
Simplify directory/module structure (#77)
* Move things up a directory

* Scripted mass update

find -type f -name "*.gradle" | xargs sed -i 's/:java-agent:/:/g'

* Remove plugin version now that it's in root module

* Update java-agent and instrumentation configs

* Misc
2020-01-22 13:55:47 -08:00
Trask Stalnaker 71d264fd00
Rename package to io.opentelemetry.auto (#54)
* Remove publishing info

* Remove Datadog-Meta-Lang handling

* Misc renames

* Rename DD_ constant field names

* Rename DDSpanTypes to SpanTypes

* Rename DDTags to MoreTags

* Rename DDSpecification to AgentSpecification

* Rename DDLocationStrategy to AgentLocationStrategy

* Rename DDCachingPoolStrategy to AgentCachingPoolStrategy

* Rename DDTransformers to AgentTransformers

* Script: rename datadog.trace to io.opentelemetry.auto

find -wholename */datadog/trace -exec mkdir -p {}/../../io/opentelemetry \; -exec mv {} {}/../../io/opentelemetry/auto \;

find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i 's/datadog\.trace\./io.opentelemetry.auto./g'
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i 's/datadog\/trace\//io\/opentelemetry\/auto\//g'

find -type f -name "*.gradle" | xargs sed -i 's/datadog\.trace\./io.opentelemetry.auto./g'
find -type f -name "*.gradle" | xargs sed -i 's/datadog\/trace\//io\/opentelemetry\/auto\//g'

* Script: rename more packages

find -wholename */datadog/test -exec mkdir -p {}/../../io/opentelemetry \; -exec mv {} {}/../../io/opentelemetry \;
find -wholename */datadog/smoketest -exec mkdir -p {}/../../io/opentelemetry \; -exec mv {} {}/../../io/opentelemetry \;
find -wholename */datadog/perftest -exec mkdir -p {}/../../io/opentelemetry \; -exec mv {} {}/../../io/opentelemetry \;
find -wholename */datadog/benchmark -exec mkdir -p {}/../../io/opentelemetry \; -exec mv {} {}/../../io/opentelemetry \;
find -wholename */datadog/loadgenerator -exec mkdir -p {}/../../io/opentelemetry \; -exec mv {} {}/../../io/opentelemetry \;

# keep these outside of io.opentelemetry.auto for now at least (things under io.opentelemetry.auto are not instrumented)
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt -o -name *.sh | xargs sed -i 's/datadog\.test\b/io.opentelemetry.test/g'
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt -o -name *.sh | xargs sed -i 's/datadog\.smoketest\b/io.opentelemetry.smoketest/g'
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt -o -name *.sh | xargs sed -i 's/datadog\.perftest\b/io.opentelemetry.perftest/g'
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt -o -name *.sh | xargs sed -i 's/datadog\.benchmark\b/io.opentelemetry.benchmark/g'
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt -o -name *.sh | xargs sed -i 's/datadog\.loadgenerator\b/io.opentelemetry.loadgenerator/g'

# ok to move this into io.opentelemetry.auto
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt -o -name *.sh | xargs sed -i 's/datadog\.slf4j\b/io.opentelemetry.auto.slf4j/g'

find -type f -name "*.gradle" | xargs sed -i 's/datadog\.test\b/io.opentelemetry.test/g'
find -type f -name "*.gradle" | xargs sed -i 's/datadog\.smoketest\b/io.opentelemetry.smoketest/g'
find -type f -name "*.gradle" | xargs sed -i 's/datadog\.perftest\b/io.opentelemetry.perftest/g'
find -type f -name "*.gradle" | xargs sed -i 's/datadog\.benchmark\b/io.opentelemetry.benchmark/g'
find -type f -name "*.gradle" | xargs sed -i 's/datadog\.loadgenerator\b/io.opentelemetry.loadgenerator/g'

find -type f -name "*.gradle" | xargs sed -i 's/datadog\.slf4j\b/io.opentelemetry.auto.slf4j/g'

* Intellij: format and organize imports

* Script: More renaming

find -name *.xml | xargs sed -i 's/<logger name="datadog"/<logger name="io.opentelemetry.auto"/g'
find -name *.java | xargs sed -i 's/LoggerFactory.getLogger("datadog")/LoggerFactory.getLogger("io.opentelemetry.auto")/g'
find -name *.java | xargs sed -i 's/"datadog.span"/"opentelemetry.auto.span"/g'
find -name *.java -o -name *.groovy | xargs sed -i 's/"datadog.doesnotexist"/"io.opentelemetry.auto.doesnotexist"/g'

# keep this outside of io.opentelemetry.auto for now at least (things under io.opentelemetry.auto are not instrumented)
find -name *.yaml | xargs sed -i 's/"datadog.benchmark"/"io.opentelemetry.benchmark"/g'

find -type f -name "*.gradle" | xargs sed -i 's/datadog\.forked/io.opentelemetry.auto.forked/g'
find -name *.yml | xargs sed -i 's/datadog\.forked/io.opentelemetry.auto.forked/g'

* Improve comment

* Script: rename dd- modules

git mv dd-java-agent java-agent
git mv java-agent/dd-java-agent.gradle java-agent/java-agent.gradle
git mv dd-trace-api trace-api
git mv trace-api/dd-trace-api.gradle trace-api/trace-api.gradle
git mv dd-smoke-tests smoke-tests
git mv smoke-tests/dd-smoke-tests.gradle smoke-tests/smoke-tests.gradle

git mv dd-trace-java.gradle trace-java.gradle

find -type f -name "*.gradle" | xargs sed -i 's/\bdd-java-agent\b/java-agent/g'
find -type f -name "*.gradle" | xargs sed -i 's/\bdd-trace-api\b/trace-api/g'
find -type f -name "*.gradle" | xargs sed -i 's/\bdd-smoke-tests\b/smoke-tests/g'

find -type f -name "*.gradle" | xargs sed -i 's/\bdd-trace-java\b/trace-java/g'

find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt -o -name *.sh -o -name *.yml | xargs sed -i 's/\bdd-java-agent\b/java-agent/g'
sed -i 's/\bdd-java-agent\b/java-agent/g' .gitignore

find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt -o -name *.sh -o -name *.yml | xargs sed -i 's/\bdd-trace-api\b/trace-api/g'
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt -o -name *.sh -o -name *.yml | xargs sed -i 's/\bdd-smoke-tests\b/smoke-tests/g'

* Remove unused config - service.name

* Remove unused config - writer.type

* Remove unused config - trace.partial.flush.min

* Script: rename dd. test packages

find -wholename */dd/trace/instrumentation -exec mkdir -p {}/../../io/opentelemetry/test \; -exec mv {} {}/../../io/opentelemetry/test \;
find -wholename */dd/test/trace/annotation -exec mkdir -p {}/../../io/opentelemetry/test \; -exec mv {} {}/../../io/opentelemetry/test \;

find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i 's/dd\.trace\.instrumentation\b/io.opentelemetry.test.instrumentation/g'
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i 's/dd\.test.trace\.annotation\b/io.opentelemetry.test.annotation/g'

* Script: rename dd properties

DD_PROP=opentelemetry.auto
DD_ENV=OPENTELEMETRY_AUTO
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\"dd\.\"/\"$DD_PROP.\"/g"
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\"DD_\"/\"${DD_ENV}_\"/g"

find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\bdd\.integration\./$DD_PROP.integration./g"
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\bdd\.integrations\./$DD_PROP.integrations./g"
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\bDD_INTEGRATION_/${DD_ENV}_INTEGRATION_/g"
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\bDD_INTEGRATIONS_/${DD_ENV}_INTEGRATIONS_/g"

find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\bdd\.trace\./$DD_PROP.trace./g"
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\bDdd\.trace\./D$DD_PROP.trace./g"
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\bDD_TRACE_/${DD_ENV}_TRACE_/g"

find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\bdd\.logs\./$DD_PROP.logs./g"

find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\bdd\.trace_id\b/$DD_PROP.trace_id/g"
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\bdd\.span_id\b/$DD_PROP.span_id/g"

find -type f -name "*.gradle" | xargs sed -i "s/\bdd\.trace\./$DD_PROP.trace./g"
find -type f -name "*.properties" | xargs sed -i "s/\bdd\.trace\./$DD_PROP.trace./g"

# test code
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\bdd\.prop\./$DD_PROP.prop./g"
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\bdd\.float\./$DD_PROP.float./g"
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\bdd\.garbage\./$DD_PROP.garbage./g"
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\bdd\.negative\./$DD_PROP.negative./g"
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\bDD_ENV_/${DD_ENV}_ENV_/g"
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\bDD_FLOAT_/${DD_ENV}_FLOAT_/g"

# test code
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\"is-dd-server\"/\"is-test-server\"/g"
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i "s/\bisDDServer\b/isTestServer/g"

* Rename dd-java-tracer.properties to java-tracer.properties

* Rename DDTracingUtil to OpenTelemetryTracingUtil

* Codec.java was removed already

* Rename __datadog to __opentelemetry

* Misc renames

* Script: remove redundant sub-package

find -wholename */io/opentelemetry/auto/agent -exec bash -c "mv {}/* {}/.." \;
find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i 's/io\.opentelemetry\.auto\.agent\b/io.opentelemetry.auto/g'

find -type f -name "*.gradle" | xargs sed -i 's/io\.opentelemetry\.auto\.agent\b/io.opentelemetry.auto/g'

find -name *.java -o -name *.groovy -o -name *.scala -o -name *.kt | xargs sed -i 's/io\/opentelemetry\/auto\/agent\b/io\/opentelemetry\/auto/g'

* Shorten logging config keys
2020-01-14 13:57:01 -08:00
Trask Stalnaker 64fd99862a
Use OpenTelemetry API (#51)
* Remove dd-trace-ot

* Remove disableShadowRelocate

* Remove GlobalTracer and ScopeListener

* Comment out instr depending on activeScope

* OpenTelemetry implementation

* Update instrumentation tests to pass

* Update test infrastruture

* Update spring-webflux instrumentation

* Update jax-rs-annotation instrumentation

* Fix ratpack failing test
2020-01-13 16:51:36 -08:00
Tyler Benson e84e6eb25d Merge changes from dd-trace-java 0.40.0
https://github.com/DataDog/dd-trace-java/releases/tag/v0.40.0

# Conflicts:
#	dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java
#	dd-java-agent/instrumentation/akka-http-10.0/src/test/groovy/AkkaHttpServerInstrumentationTest.groovy
#	dd-java-agent/instrumentation/dropwizard/src/test/groovy/DropwizardTest.groovy
#	dd-java-agent/instrumentation/glassfish/src/test/groovy/GlassFishServerTest.groovy
#	dd-java-agent/instrumentation/google-http-client/src/test/groovy/AbstractGoogleHttpClientTest.groovy
#	dd-java-agent/instrumentation/jetty-8/src/test/groovy/JettyHandlerTest.groovy
#	dd-java-agent/instrumentation/play-2.4/src/test/groovy/server/PlayServerTest.groovy
#	dd-java-agent/instrumentation/play-2.6/src/test/groovy/server/PlayServerTest.groovy
#	dd-java-agent/instrumentation/ratpack-1.4/src/test/groovy/server/RatpackHttpServerTest.groovy
#	dd-java-agent/instrumentation/servlet/request-2/src/test/groovy/JettyServlet2Test.groovy
#	dd-java-agent/instrumentation/servlet/request-3/src/test/groovy/AbstractServlet3Test.groovy
#	dd-java-agent/instrumentation/servlet/request-3/src/test/groovy/JettyServlet3Test.groovy
#	dd-java-agent/instrumentation/servlet/request-3/src/test/groovy/TomcatServlet3Test.groovy
#	dd-java-agent/instrumentation/spring-webmvc-3.1/src/test/groovy/test/SpringBootBasedTest.groovy
#	dd-java-agent/src/test/groovy/datadog/trace/agent/JMXFetchTest.groovy
#	dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/base/HttpServerTest.groovy
#	dd-trace-api/src/main/java/datadog/trace/api/Config.java
#	dd-trace-ot/src/main/java/datadog/opentracing/DDSpan.java
#	dd-trace-ot/src/main/java/datadog/opentracing/decorators/DDDecoratorsFactory.java
#	dd-trace-ot/src/main/java/datadog/trace/common/writer/DDAgentWriter.java
#	dd-trace-ot/src/test/groovy/datadog/opentracing/decorators/SpanDecoratorTest.groovy
#	dd-trace-ot/src/test/groovy/datadog/trace/api/writer/DDAgentWriterTest.groovy
2020-01-02 08:28:06 -08:00
Pawel Chojnacki 0ee80a0b95 [rmi] Instrumentation for RMI 1.2 and later
includes instrumentation of client and server endpoints
currently missing passing of execution context from client to server
2019-12-19 17:20:50 +01:00
Tyler Benson 92069fd498 Merge changes from dd-trace-java 0.39.0
https://github.com/DataDog/dd-trace-java/releases/tag/v0.39.0

# Conflicts:
#	dd-java-agent/instrumentation/akka-http-10.0/src/lagomTest/groovy/LagomTest.groovy
#	dd-java-agent/instrumentation/akka-http-10.0/src/test/groovy/AkkaHttpClientInstrumentationTest.groovy
#	dd-java-agent/instrumentation/akka-http-10.0/src/test/groovy/AkkaHttpServerInstrumentationTest.groovy
#	dd-java-agent/instrumentation/datastax-cassandra-3/src/test/groovy/CassandraClientTest.groovy
#	dd-java-agent/instrumentation/dropwizard/dropwizard-views/src/test/groovy/ViewRenderTest.groovy
#	dd-java-agent/instrumentation/dropwizard/src/test/groovy/DropwizardTest.groovy
#	dd-java-agent/instrumentation/elasticsearch/transport-5.3/src/test/groovy/springdata/Elasticsearch53SpringRepositoryTest.groovy
#	dd-java-agent/instrumentation/glassfish/src/test/groovy/GlassFishServerTest.groovy
#	dd-java-agent/instrumentation/google-http-client/src/test/groovy/AbstractGoogleHttpClientTest.groovy
#	dd-java-agent/instrumentation/grpc-1.5/src/test/groovy/GrpcStreamingTest.groovy
#	dd-java-agent/instrumentation/grpc-1.5/src/test/groovy/GrpcTest.groovy
#	dd-java-agent/instrumentation/hibernate/core-3.3/src/test/groovy/CriteriaTest.groovy
#	dd-java-agent/instrumentation/hibernate/core-3.3/src/test/groovy/QueryTest.groovy
#	dd-java-agent/instrumentation/hibernate/core-3.3/src/test/groovy/SessionTest.groovy
#	dd-java-agent/instrumentation/hibernate/core-4.0/src/test/groovy/CriteriaTest.groovy
#	dd-java-agent/instrumentation/hibernate/core-4.0/src/test/groovy/QueryTest.groovy
#	dd-java-agent/instrumentation/hibernate/core-4.0/src/test/groovy/SessionTest.groovy
#	dd-java-agent/instrumentation/hibernate/core-4.3/src/test/groovy/ProcedureCallTest.groovy
#	dd-java-agent/instrumentation/hibernate/core-4.3/src/test/groovy/SpringJpaTest.groovy
#	dd-java-agent/instrumentation/hystrix-1.4/src/test/groovy/HystrixObservableChainTest.groovy
#	dd-java-agent/instrumentation/hystrix-1.4/src/test/groovy/HystrixObservableTest.groovy
#	dd-java-agent/instrumentation/hystrix-1.4/src/test/groovy/HystrixTest.groovy
#	dd-java-agent/instrumentation/java-concurrent/src/slickTest/groovy/SlickTest.groovy
#	dd-java-agent/instrumentation/jax-rs-annotations-1/src/test/groovy/JerseyTest.groovy
#	dd-java-agent/instrumentation/jdbc/src/test/groovy/JDBCInstrumentationTest.groovy
#	dd-java-agent/instrumentation/jedis-1.4/src/test/groovy/JedisClientTest.groovy
#	dd-java-agent/instrumentation/jetty-8/src/test/groovy/JettyHandlerTest.groovy
#	dd-java-agent/instrumentation/jms/src/latestDepTest/groovy/JMS2Test.groovy
#	dd-java-agent/instrumentation/jms/src/test/groovy/JMS1Test.groovy
#	dd-java-agent/instrumentation/jsp-2.3/src/test/groovy/JSPInstrumentationBasicTests.groovy
#	dd-java-agent/instrumentation/jsp-2.3/src/test/groovy/JSPInstrumentationForwardTests.groovy
#	dd-java-agent/instrumentation/kafka-clients-0.11/src/test/groovy/KafkaClientTest.groovy
#	dd-java-agent/instrumentation/kafka-streams-0.11/src/test/groovy/KafkaStreamsTest.groovy
#	dd-java-agent/instrumentation/lettuce-5/src/test/groovy/LettuceAsyncClientTest.groovy
#	dd-java-agent/instrumentation/lettuce-5/src/test/groovy/LettuceReactiveClientTest.groovy
#	dd-java-agent/instrumentation/lettuce-5/src/test/groovy/LettuceSyncClientTest.groovy
#	dd-java-agent/instrumentation/netty-4.1/src/test/groovy/Netty41ClientTest.groovy
#	dd-java-agent/instrumentation/play-2.4/src/test/groovy/server/PlayServerTest.groovy
#	dd-java-agent/instrumentation/play-2.6/src/test/groovy/server/PlayServerTest.groovy
#	dd-java-agent/instrumentation/rabbitmq-amqp-2.7/src/test/groovy/RabbitMQTest.groovy
#	dd-java-agent/instrumentation/ratpack-1.4/src/test/groovy/server/RatpackHttpServerTest.groovy
#	dd-java-agent/instrumentation/servlet/request-2/src/test/groovy/JettyServlet2Test.groovy
#	dd-java-agent/instrumentation/servlet/request-3/src/test/groovy/AbstractServlet3Test.groovy
#	dd-java-agent/instrumentation/servlet/request-3/src/test/groovy/JettyServlet3Test.groovy
#	dd-java-agent/instrumentation/servlet/request-3/src/test/groovy/TomcatServlet3Test.groovy
#	dd-java-agent/instrumentation/sparkjava-2.3/src/test/groovy/SparkJavaBasedTest.groovy
#	dd-java-agent/instrumentation/spring-data-1.8/src/test/groovy/SpringJpaTest.groovy
#	dd-java-agent/instrumentation/spring-webflux-5/src/test/groovy/SpringWebfluxTest.groovy
#	dd-java-agent/instrumentation/spring-webflux-5/src/test/groovy/dd/trace/instrumentation/springwebflux/client/SpringWebfluxHttpClientTest.groovy
#	dd-java-agent/instrumentation/spring-webmvc-3.1/src/test/groovy/test/SpringBootBasedTest.groovy
#	dd-java-agent/instrumentation/spymemcached-2.12/src/test/groovy/datadog/trace/instrumentation/spymemcached/SpymemcachedTest.groovy
#	dd-java-agent/instrumentation/trace-annotation/src/test/groovy/ConfiguredTraceAnnotationsTest.groovy
#	dd-java-agent/instrumentation/trace-annotation/src/test/groovy/TraceAnnotationsTest.groovy
#	dd-java-agent/instrumentation/trace-annotation/src/test/groovy/TraceConfigTest.groovy
#	dd-java-agent/instrumentation/twilio/src/test/groovy/test/TwilioClientTest.groovy
#	dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/base/HttpClientTest.groovy
#	dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/base/HttpServerTest.groovy
#	dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/utils/TraceUtils.groovy
#	dd-trace-ot/src/main/java/datadog/opentracing/ContainerInfo.java
#	dd-trace-ot/src/main/java/datadog/opentracing/DDTracer.java
#	dd-trace-ot/src/main/java/datadog/trace/common/writer/DDAgentWriter.java
#	dd-trace-ot/src/test/groovy/datadog/opentracing/decorators/SpanDecoratorTest.groovy
#	dd-trace-ot/src/test/groovy/datadog/trace/api/writer/DDAgentWriterTest.groovy
2019-12-16 09:22:10 -08:00
Brian Devins-Suresh cf3f04f509
Merge pull request #1129 from DataDog/brian.devinssuresh/jedis-3.0
Add support for jedis 3.0+
2019-12-11 11:22:16 -05:00
Laplie Anderson 498d2bd461 Add ContextRequestFilter instrumentation to JAX-RS 2019-12-10 14:00:31 -05:00
Brian Devins-Suresh 7b92c40cbc Add support for jedis 3.0+ 2019-12-05 15:09:58 -05:00
Tyler Benson 4dde3a4445 Merge changes from dd-trace-java 0.38.0
https://github.com/DataDog/dd-trace-java/releases/tag/v0.38.0
2019-11-22 16:33:38 -08:00
Laplie Anderson 45c16a1c55 Create Play WS 2.1 Project 2019-11-20 18:13:41 -05:00
Laplie Anderson 99acb52589
Merge pull request #1103 from DataDog/landerson/load-generator
Simple load generator tool
2019-11-19 10:19:14 -05:00
Trask Stalnaker d86632d648
Remove jmxfetch module (#13) 2019-11-18 17:24:37 -08:00
Nikolay Martynov 2c4422aa04 Upgradle to gradle 6.0 2019-11-12 16:26:46 -05:00
Laplie Anderson 88902046ce simple load generator tool 2019-11-07 16:50:23 -05:00
Laplie Anderson 9e26da85be wsclient -> play-ws 2019-11-01 14:37:06 -04:00
Laplie Anderson 3a1d331525 WSClient instrumentation 2019-10-31 11:12:00 -04:00
Tyler Benson 7ae5de1fc6 Refactor Servlet Advice
Moving directory structure around.
Combining advice, trying to make it propagate better.
2019-10-25 10:09:19 -07:00
Tyler Benson fbd16d8cb7 Add assert to ensure muzzle range not empty and update spring-data
Also fix a few muzzle definitions that are now broken with the new requirement.

Moved a few projects around to match correct version numbers.
2019-10-23 14:09:01 -07:00
Tyler Benson 7db4602253 Fix jax-rs-client minimum supported version
Can’t be completely sure since many of these versions don’t show up in a maven range query used by muzzle.
2019-10-23 14:02:04 -07:00
Laplie Anderson 6e0af7cdeb Dont instrument `@Decorator`s or CDI breaks 2019-10-16 18:26:06 -04: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 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
Tyler Benson 82180c2ea6 Add support for jax-rs AsyncResponse 2019-10-07 14:19:46 +02: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
Laplie Anderson e244ea633d Add operation id and network tags to couchbase 2019-09-16 16:59:29 -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 b875ae19a2
Merge pull request #988 from DataDog/landerson/couchbase-subscribe
Couchbase Async Subscriptions
2019-09-13 09:36:07 -04:00
Laplie Anderson 717a27080b Remove dd-trace and dd-trace-ext 2019-09-12 10:40:11 -04:00
Laplie Anderson 6c445ad030 Extract RxJava instrumentation from Hystrix and add to Couchbase 2019-09-11 19:25:08 -04:00
dougqh 5f5605f6b1 Putting in alphabetical order 2019-09-11 11:53:15 -04:00
Ryan Fitzpatrick 5f7e0609ed Initial spring data instrumentation 2019-09-10 15:13:20 -04:00
Laplie Anderson 6c5af673cd Minor issues 2019-09-04 13:11:03 -04:00
Laplie Anderson fa378e16d3 Simply since the agent code doesn't run without java.instrument 2019-09-04 13:11:03 -04:00
Laplie Anderson 7a0ba452b8 Module smoke test framework 2019-09-04 13:11:03 -04:00
Tyler Benson e74167adf2 Update Play instrumentation to work with 2.7
(Don’t be surprised when things break with 2.8… They’re religious about removing deprecated methods on minor release versions.  If they followed standard convention, they’d likely be on at least 11.x.)

Add client test for 2.4-2.5 http library.  2.6+ won’t work because the underlying frameworks we instrument are shaded.

Also add server tests.  We could do a lot more testing since it seems play still supports using Netty as the backing server even though it’s not the default.  It’s difficult to do extensive testing though because they have so many breaking changes between versions.
2019-08-22 12:43:13 -07:00
Tyler Benson f5b73260ed Add instrumentation and tests for Grizzly 2.x Http Server 2019-08-13 16:05:11 -07:00
Laplie Anderson b57282daa4
Merge pull request #922 from DataDog/landerson/cli-test
Cli Application Smoke Test
2019-07-25 12:30:53 -04:00
Laplie Anderson 41a2e7b51a Cli Application smoke test
simple cli application and test
2019-07-18 11:14:59 -04:00
Laplie Anderson 0f9b28df27
Merge pull request #914 from DataDog/landerson/google-http-client
Instrumentation of Google Http Client
2019-07-17 16:17:38 -04:00
Tyler Benson 4486c3a6ff Change jax-rs-client project names to match versions 2019-07-10 13:25:48 -06:00
Luca Abbati b62266fd52
First draft of jersey 1.19 client instrumentation 2019-07-09 21:13:00 -04:00
Laplie Anderson f53b14bd0f Stub google http client integration 2019-07-09 17:17:41 -04:00
Luca Abbati dcf0f57030
Add support for log4j 1.x 2019-06-20 16:08:49 -04:00
Luca Abbati d9eb480f3c
Rename log4j2 module to reflect library name 2019-06-19 12:35:22 -04:00
Luca Abbati 22477efb7a
Add basic support for log4j ThreadContext for log injection. 2019-06-19 12:34:39 -04:00
Tyler Benson d26edd6c17 Ensure gradle runs base mongo test first
Otherwise there is a race condition between the projects initializing the mongo instance.
2019-06-13 10:44:42 -07:00
Luca Abbati eb032d1c8e
Adding muzzle tests for glassfish 3 and 5 2019-05-29 17:53:42 +02:00
Luca Abbati 19c0b21332
Remove useless tests from Glassfish 4 instrumentation 2019-05-29 17:24:51 +02:00
Luca Abbati 0c52ba58c4
Move glassfish 4 compatibility layer to instrumentation module 2019-05-27 15:17:04 +02:00
Tyler Benson 9ad06a6791 Add instrumentation for Apache HttpAsyncClient
Extract http client tests to shared class.
2019-04-23 17:10:40 -07:00
Tyler Benson 2acaeb3dfb Revert minor changes. 2019-04-17 16:23:15 -07:00
Daryl Robbins e3d97b0984 WIP Twilio SDK Instrumentation
Missed Gradle file

Updates to handle async calls, which have broken all tests

Fixed instrumentation and augmented tests
2019-04-16 13:46:43 -07:00
Tyler Benson e0d95ceb19 Fix cassandra supported version
and limit range check to <4.
The latest release (4.0) is not compatible with our instrumentation.
2019-03-21 17:57:08 -07:00
Will Gittoes af0f37861b
Support Hibernate 3.3 2019-03-21 13:38:16 +11:00
Will Gittoes 8c5158f8e9
Restructure hibernate integration 2019-03-20 11:00:42 +11:00
Will Gittoes b60c3bcc0a
Decouple common utils used in hibernate tracing from any specific version of hibernate 2019-03-19 14:40:16 +11:00
Will Gittoes 3b6c688ce8
Support Hibernate 3.5 2019-03-19 09:56:39 +11:00
Will Gittoes 2ceeb4dc14
Additional instrumentation for hibernate 4.3 and 5.x onwards 2019-03-13 13:52:33 +11:00
Will Gittoes bf110640e8
Merge branch 'master' into willgittoes-dd/hibernate-integration 2019-03-12 09:39:58 +11:00
Will Gittoes 81f78db0ff
Support hibernate 4.0 2019-03-11 17:22:05 +11:00
Will Gittoes 600f2e267f
Enable integration for hibernate 4.3 2019-03-11 16:20:27 +11:00
Will Gittoes e05429a9ff
Rename to hibernate-5 2019-03-06 10:12:52 +11:00
Nikolay Martynov aa031cc708 Add instrumentation for Tomcat webapp classloading 2019-02-28 12:58:08 -05:00
Will Gittoes 8985d6fd07
Merge branch 'master' into willgittoes-dd/hibernate-integration 2019-02-26 12:03:08 +11:00
Tyler Benson db47fde8d1 Group Elasticsearch instrumentation into common folder
Also migrate to decorator.
2019-02-22 13:28:11 -08:00
Nikolay Martynov 13005d72cb Add reactor-core instrumentation 2019-02-14 16:59:56 -05:00
Will Gittoes e8f0eaf85e
Add basic Hibernate integration 2019-02-11 14:47:21 +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 f7844f763c Instrument Akka and Scala ForkJoinTask and ForkJoinPool 2019-01-25 16:15:48 -05:00
Tyler Benson 03bcdc97cc Move awaitGC to common utility package 2019-01-25 10:32:09 -08:00
Nikolay Martynov 62402a6426 AWS SDK2 instrumentation 2019-01-25 12:02:31 -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
Andrew Kent 6ffaa9e04f Remove jre logging integration 2019-01-16 08:59:10 -08:00
Andrew Kent 6089dc60ba SpringBoot smoke test 2019-01-10 09:06:22 -08:00
Marco Ferrer a31abc67e9 add support for instrumenting kotlin coroutine schedulers 2019-01-09 19:04:42 -05:00
Gary Huang 55787b4fb4
Move to dd-smoke-test project 2019-01-08 23:12:28 -05:00
Gary Huang 071a545403
Add Play Smoke Test with Java Agent
Adding gradle task & test to compile and start a Play server with the agent, hits a welcome endpoint 200 times as a smoke test.
2019-01-08 23:04:43 -05:00
Gary Huang e1922ed8ba
Move to top level subproject 2019-01-08 20:11:11 -05:00
Tyler Benson 6a09f6e2b9 Moves all ittests to be tests under dd-java-agent.
This was weird having it as a separate project.  Reduces the number of top level directories.

There weren’t any existing tests in dd-java-agent’s test directory, so this seemed like a good place to put them.
2019-01-04 15:25:36 -08:00
Andrew Kent 2861d87071 slf4j MDC autoinjection integration 2018-12-19 17:09:00 -08:00
Gary Huang 34658aabcb
Play Server Performance Testing
Set up gradle sub project
2018-12-14 11:18:58 -05:00
Andrew Kent 1004ee4ef7 Patch java.util.logging.Logger for safe use with jmxfetch 2018-12-11 17:26:02 -08:00
Andrew Kent 0e6a416b57 Initial gradle projects 2018-12-03 11:45:29 -08: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
Nikolay Martynov 403040bac0 Use JMXFetch as a library 2018-10-18 09:46:44 -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
Tyler Benson 8ff5c7c36c Review fix comments and version range. 2018-10-18 16:08:37 +10: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
Tyler Benson 14846a79df Add Dropwizard-views instrumentation 2018-10-11 14:39:04 +10: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 33ab8d0072
Expand instrumentation version range and rename package 2018-09-26 22:31:23 -04: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
Tyler Benson de21c7b245 Review fixes. 2018-09-12 10:32:05 +10:00
Tyler Benson 6732110f28 Handle connection failures for Jersey and Resteasy
CXF and other client frameworks will still lose the span and miss the error.
2018-09-12 10:10:31 +10:00
Andrew Kent faad7824ed Elasticsearch 5.3.0 instrumentation 2018-09-11 16:00:38 -07:00
Gary Huang a366ed9e80
Muzzle and Expand Cassandra Instrumentation
Add muzzle block and remove class loader matcher method. Muzzling the instrumentation works for versions 2.3+
2018-09-10 18:33:17 -04:00
Tyler Benson 2761615436 Couchbase instrumentation 2018-09-05 14:46:22 +10:00
Gary Huang 5f137beb9a
Merge pull request #460 from DataDog/gary/spring-webflux-instrumentation
Spring webflux instrumentation
2018-09-04 13:38:06 -04:00
Gary Huang c87fec36ac Spring webflux instrumentation
instruments spring webflux 5+
2018-08-31 14:31:03 -04:00
Tyler Benson 9cf7b28e88 Make JMS more resilent to property failure
Combine into single module and add test.
Replace classLoaderMatcher with muzzle check.

Thanks for the tip @adriancole.
2018-08-31 16:10:14 +10:00
Tyler Benson a34f7b849b Instrument gRPC
Adds spans for the duration of the connection and child spans for each message.
Also propagates the trace using the metadata object.
2018-07-20 12:25:04 +10:00
Andrew Kent a8a4ff2c23 Remove classloader instrumentation 2018-07-10 17:26:49 -04:00
Gary Huang 46e7036701 fix version scan and test versions 2018-06-25 16:54:45 -04:00
Gary Huang b1d06299cc JSP instrumentation
WIP: more unit tests to come
2018-06-22 18:24:06 -04:00
Tyler Benson 83db4e8c4d
Merge pull request #352 from DataDog/tyler/netty
Netty HTTP client and server instrumentation
2018-06-21 14:11:12 +10:00
Tyler Benson 43e31eae80 Separate out instrumentation for netty 4.0 from 4.1 2018-06-18 12:52:42 +10:00
Tyler Benson 9b3df4ff9e Netty HTTP client and server instrumentation first pass
Doesn’t target right versions. Needs lots of testing.
2018-06-18 12:52:42 +10:00
Andrew Kent 109f2cead4 Akka-http instrumentation and test 2018-06-15 12:48:57 -07:00
Nikolay Martynov 63c4cdff87 Memcached testing: add support for testoingcontainers 2018-06-13 13:06:23 -04:00
Gary Huang 1213311418 lettuce redis client sync and async api instrumentation with sync unit tests complete 2018-06-08 23:53:13 -04:00
Tyler Benson 9ff09b93e1 Refactor HttpUrlConnection Instrumentation
getOutputStream shouldn’t call getResponseCode, otherwise the request gets screwed up.
2018-06-07 16:25:38 +10:00
Tyler Benson d235618a6e Add instrumentation for Java’s UrlConnection
For HttpUrlConnection, trace propagation headers are added to the outgoing request.

Due to the awkward design of the API, the ability to instrument in a natural way was limited, thus the main points instrumented are the get{Input,Output}Stream methods.
2018-06-06 09:12:48 +10:00
Tyler Benson 2526d30532 Remove examples and cleanup ignores 2018-05-24 11:13:00 +10:00
Tyler Benson 0cf8fef8d8 Elasticsearch Instrumentation 2018-05-23 11:29:13 +10:00
Tyler Benson a3a1b08fa9 Fix AWS version ranges 2018-05-22 16:45:01 +10:00
Tyler Benson 7c4d42ef8a Add additional test task for testing latest versions of a dependency 2018-05-04 14:04:30 +10:00
Tyler Benson 660dfc834c It actually isn’t compatable until 1.4 2018-05-04 14:03:48 +10:00
Tyler Benson be34eaf032 Instrument HystrixCommand and HystrixThreadPool 2018-05-04 14:03:48 +10:00
Tyler Benson 3db2d654f1 Fix spark instrumentation
and rebase off master.
2018-04-26 17:01:45 +10:00
Jørgen Grøndal 7e233ac3c7 feat: find oldest supported spark, update version, make tests run 2018-04-26 14:53:32 +10:00
Jørgen Grøndal d0822c7458 fix: support jetty 8+, sparkjava 2.5+ 2018-04-26 14:53:32 +10:00
Jørgen Grøndal 8bfeae4a82 fix: formatting and add version to spark java instrumentation 2018-04-26 14:53:32 +10:00
Jørgen Grøndal c49d4f6dd8 fix: add jetty handler instrumentaiton. remove filter3instrumentation. add sparkjava routematch instrumentation 2018-04-26 14:53:32 +10:00
Jørgen Grøndal 91aa3c854d fix: first attempt at sparkjava trace instrumentation 2018-04-26 14:53:32 +10:00
Jon Mort 1ba0b69750
Resource naming and other review comments 2018-04-18 11:42:49 +01:00
Jon Mort 582c0af962
Rename to Ratpack 1.4 2018-04-18 11:42:49 +01:00
Jon Mort 6e92221e5a
Ratpack instrumentaiton support 2018-04-18 11:42:48 +01:00
Tyler Benson 001e59e0cc Build with Java 8, but run tests with other JDKs
Use workspaces to persist build between jobs.
2018-04-16 14:36:38 +08:00
Andrew Kent fc27e6b5ae Revert "Move play2.6 tests out of subproject and into sourceSet"
This reverts commit 2a42f7dc7d.
2018-04-08 10:10:12 -07:00
Andrew Kent 2a42f7dc7d Move play2.6 tests out of subproject and into sourceSet 2018-04-06 14:03:20 -04:00
Andrew Kent 2449810ce0 Play 2.4 and 2.6 testing 2018-04-05 17:58:04 -04:00
Andrew Kent 772872bcb5 Play Instrumentation 2018-03-28 10:26:57 -07:00
Andrew Kent 0714139b31
Merge pull request #264 from DataDog/ark/bs-testing
Akka Instrumentation
2018-03-20 09:42:18 -07:00
Andrew Kent 714afba71b Akka actor instrumentation 2018-03-20 09:31:54 -07:00
Tyler Benson 19b94da7bb JAX-RS Client Tracing 2018-03-20 08:54:09 +08:00
Andrew Kent 5a97c1e5bb Copied scala tests over from integration tests 2018-03-19 16:07:45 -07:00
Tyler Benson 0fbec69b6d
Merge pull request #253 from DataDog/tyler/traceinterceptor
Implement the TraceInterceptor API
2018-03-13 08:30:01 +10:00
Andrew Kent 9a83413141 Executor Instrumentation for Scala 2018-03-09 11:50:39 -08:00
Tyler Benson 286e9d2d00 Add instrumentation to catch additional classloaders.
Still doesn’t work with Spring Boot because the way they structure their Jars.
2018-03-09 14:32:41 +10:00
Tyler Benson 163b285868 Rename to jedis-1.4 since that’s the earliest working version
Also change instrumentation binding for better coverage.
2018-02-23 13:04:46 +10:00
Tyler Benson f4d2e6f600 Merge branch 'master' into jedis 2018-02-22 16:44:44 +10:00
Andrew Kent 64e2173bf7 Set bootstrap delegation for osgi classloading 2018-02-15 19:17:19 -08:00
Andrew Kent 1820fbcbfd Bootstrap delegation for wildfly/jboss 2018-02-15 19:17:19 -08:00
Andrew Kent cfef64b026 Reorganize dd-java-agent subprojects 2018-02-15 18:55:02 -08:00
Tyler Benson c9da16f334 Add resource naming instrumentation for jax-rs 2018-02-14 19:18:01 +10:00
Gihad Murad 1d35938996 Merge branch 'master' into jedis 2018-02-05 13:00:13 -05:00
Gihad Murad cef86291e3 Added Redis instrumentation via Jedis client 2.9 and changed spring-boot-jdbc to spring-boot-jdbc-redis 2018-02-05 12:59:42 -05:00
Tyler Benson 4314f71ab7 Kafka and Kafka Streams instrumentation
This includes propagation and traces for producers and consumers.
2018-02-01 20:04:40 +10:00
Tyler Benson 64d39030e5 Use workflows in Circle to test Java 7 and 8
Java 9 is commented out because there are some test failures that will be investigated later.

Some tests had to be excluded from Java 7 because they don’t have a Java 7 compatible version.
2018-01-22 13:46:50 -05:00
Tyler Benson 6d3d88987b Rename dd-trace-annotations to dd-trace-api
And move DDTags over to it.
Move some `datadog.trace.api` classes over to `datadog.trace.common`.
Other misc renaming.
2018-01-09 10:07:36 +10:00
Tyler Benson becf2a5862 Lots of renaming
Module:
dd-trace -> dd-trace-ot

Packages:
Standardize on `datadog.trace` and `datadog.opentracing` as the package prefixes.
2018-01-09 10:02:06 +10:00
Tyler Benson eeb17c4522 Move @Trace and JDBC instrumentation to individual modules 2018-01-04 16:20:26 +10:00
Andrew Kent ef3ba8be60 Move dd-java-agent-perftest to dd-java-agent subproject. 2018-01-02 12:17:18 -08:00
Andrew Kent 599211e750 Simple jetty perf test 2018-01-02 09:13:42 -08:00
Andrew Kent e65132e462 Perf Test Project 2018-01-02 09:13:42 -08:00
Andrew Kent 99442cdca7 Agent Testing Project 2017-12-28 09:46:08 -08:00
Tyler Benson 02460060bc Misc cleanup
Remove out of date “async-tracing” example since it’s more about byteman and no longer relevant.

Minor changes to improve the code test coverage…
2017-12-21 16:31:03 -08:00
Andrew Kent f68406113a Remove helpers from agent 2017-12-18 16:44:12 -08:00
Tyler Benson d933a4049a Move OkHttp instrumentation to byte buddy 2017-12-06 18:07:17 -08:00
Tyler Benson f807a5da18
Merge pull request #163 from DataDog/tyler/jmh-retransform
Add JMH Benchmarks
2017-12-06 08:04:07 -08:00
Tyler Benson caf3953360 Add JMH Benchmarks 2017-12-04 17:30:54 -08:00
Andrew Kent 6fa303058f ApacheHttpClient bytebuddy instrumentation and tests. 2017-12-01 10:54:32 -08:00
Andrew Kent 7298b0a31a Convert datastax cassandra instrumentation to bytebuddy 2017-11-28 17:01:04 -08:00
Andrew Kent 47b1eec6da Mongo Async Instrumentation and embedded mongo tests. 2017-11-27 09:18:49 -08:00
Tyler Benson 871ce37f80 Migrate JMS to Byte Buddy and add JMS 1 support
This does not yet include instrumentation for MessageListener.
I think there is actually no difference between the instrumentation so we should combine them.
I also added TEXT_MAP as a format that maps to the HTTP Codec.  There is some remapping inside the instrumentation to remove dashes before setting as a property.  This should also be changed when an official format is defined.

This also currently has a problem with Spring Boot applications as the JMS Util references classes not on the system classpath (it needs to be injected into the child classpath)
2017-11-17 12:06:30 -08:00
Tyler Benson e8bbc849bb Set resource name using the route pattern from spring.
This provides a better static resorce name than trying to conjure one out of the original URL.
2017-10-30 13:24:18 -07:00
Tyler Benson 30721d00dc Replace tomcat/jetty specific integ with generic servlet integ.
This should also work with things like Weblogic and Websphere with the main requirement being Servlet 2.3 or above compatibility.
2017-09-20 16:39:43 -07:00
Tyler Benson a8908c06d8 Move helpers to a separate project for future bundling
This will allow us to eventually inject these classes in the correct classpath rather than having them on the system classpath.
2017-09-05 12:19:22 -07:00
Tyler Benson 9a9da92b59 Add version checking via class/method for jetty 2017-08-24 17:38:16 -07:00
Tyler Benson 988a3d0fdf Cleanup plugin and add identifying classes to config
Still missing jetty since that requires method level searching.
2017-08-18 11:11:37 -06:00
Tyler Benson 9b73fed3c5 Add plugin that scans for classes unique to version range
Does not include method signatures yet.  Still a work in progress.

Execute with `./gradlew scanVersions --parallel`.
Using `--parallel` is strongly recommended.
2017-08-18 11:11:37 -06:00
Emanuele Palazzetti d10e8e0c34 [example] add Spark framework example (#60)
* [example] add Spark framework example
* [example] formatting
2017-07-27 21:09:58 +02:00
Tyler Benson e8dbc34bea Apply consistent formatting to other files 2017-07-19 08:09:19 -07:00
Tyler Benson 8d9bdef4b7 Rename build.gradle scripts to match project name.
This will help in finding build scripts inside the IDE.
2017-07-10 16:12:15 -07:00
Tyler Benson 5a6bd2d002 Add gradle build scripts.
Currently has issues with shadow jar due to Java 9 compiled classes inside byteman used by dd-java-agent.
2017-06-30 11:35:57 -07:00