Merge pull request #26 from DataDog/gpolaert/new-shading

New shading
This commit is contained in:
Tyler Benson 2017-07-05 09:01:18 -07:00 committed by GitHub
commit 23b0b7e7db
9 changed files with 86 additions and 77 deletions

View File

@ -5,6 +5,7 @@ dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
testCompile group: 'org.assertj', name: 'assertj-core', version: '3.6.2'
testCompile group: 'org.mockito', name: 'mockito-core', version: '2.7.22'
testCompile group: 'ch.qos.logback', name: 'logback-classic' , version: '1.2.3'
testCompile group: 'org.mongodb', name: 'mongo-java-driver', version: '3.4.2'
testCompile group: 'org.eclipse.jetty', name: 'jetty-server', version: '9.4.1.v20170120'
testCompile group: 'org.eclipse.jetty', name: 'jetty-servlet', version: '9.4.1.v20170120'

View File

@ -11,11 +11,13 @@
<name>dd-java-agent-ittests</name>
<description>Datadog Java Agent integration tests</description>
<url>https://github.com/datadog/dd-trace-java</url>
<packaging>jar</packaging>
<properties>
<maven.deploy.skip>true</maven.deploy.skip>
<dd-trace.version>0.1.2-SNAPSHOT</dd-trace.version>
<!--Skip tests-->
<skipTests>true</skipTests>
</properties>
<dependencies>
@ -27,8 +29,22 @@
<version>${dd-trace.version}</version>
<scope>test</scope>
</dependency>
<!-- Required for the tracer resolver / annotation -->
<dependency>
<groupId>com.google.auto.service</groupId>
<artifactId>auto-service</artifactId>
<version>1.0-rc3</version>
<scope>compile</scope>
</dependency>
<!-- JUnit tests -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.opentracing</groupId>
<artifactId>opentracing-mock</artifactId>
@ -194,37 +210,16 @@
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.10.4</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19</version>
<configuration>
<includes>
<!--<include>*Test.java</include>-->
</includes>
<excludes>
<exclude>*Test.java</exclude>
</excludes>
<!--<forkCount>3</forkCount>-->
<!--<reuseForks>false</reuseForks>-->
<argLine>
-javaagent:${M2_REPO}/com/datadoghq/dd-java-agent/${project.version}/dd-java-agent-${project.version}.jar
-Dorg.jboss.byteman.verbose=true
</argLine>
<!--<workingDirectory>target/FORK_DIRECTORY_${surefire.forkNumber}</workingDirectory>-->
<skipTests>${skipTests}</skipTests>
</configuration>
</plugin>
<plugin>
@ -238,26 +233,10 @@
<goal>shade</goal>
</goals>
<configuration>
<artifactSet>
<excludes>
<!-- <exclude>ch.qos.logback:*</exclude> -->
<!-- <exclude>org.slf4j:*</exclude> -->
</excludes>
</artifactSet>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>otarules.btm</resource>
</transformer>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<manifestEntries>
<Agent-Class>com.datadoghq.trace.agent.AnnotationsTracingAgent</Agent-Class>
<Premain-Class>com.datadoghq.trace.agent.AnnotationsTracingAgent
</Premain-Class>
<Can-Redefine-Classes>true</Can-Redefine-Classes>
<Can-Retransform-Classes>true</Can-Retransform-Classes>
<Boot-Class-Path>./${project.artifactId}.jar</Boot-Class-Path>
</manifestEntries>
</transformer>
</transformers>
</configuration>
</execution>

View File

@ -21,7 +21,7 @@ sampler:
# skipTagsPatterns: {"http.url": ".*/demo/add.*"}
# Enable custom annotation tracing over a selected set of packages
enableCustomAnnotationTracingOver: ["io.opentracing.contrib.agent"]
enableCustomAnnotationTracingOver: ["com.datadoghq.trace.agent"]
# Disable some instrumentations
# disabledInstrumentations: ["apache http", "mongo", "jetty", "tomcat", ...]

View File

@ -12,6 +12,7 @@ dependencies {
compile group: 'io.opentracing.contrib', name: 'opentracing-agent', version: '0.1.0'
compile group: 'org.reflections', name: 'reflections', version: '0.9.11'
compile group: 'com.google.auto.service', name: 'auto-service', version: '1.0-rc3'
compile(group: 'io.opentracing.contrib', name: 'opentracing-web-servlet-filter', version: '0.0.9') {
@ -45,6 +46,7 @@ dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
testCompile group: 'org.assertj', name: 'assertj-core', version: '3.6.2'
testCompile group: 'org.mockito', name: 'mockito-core', version: '2.7.22'
testCompile group: 'ch.qos.logback', name: 'logback-classic' , version: '1.2.3'
compileOnly group: 'org.eclipse.jetty', name: 'jetty-servlet', version: '9.3.6.v20151106'
compileOnly group: 'org.apache.tomcat.embed', name: 'tomcat-embed-core', version: '9.0.0.M1'
compileOnly group: 'org.mongodb', name: 'mongo-java-driver', version: '3.4.2'

View File

@ -52,13 +52,17 @@
<version>${ot.agent.version}</version>
</dependency>
<!-- Used to find annotated methods -->
<dependency>
<groupId>org.reflections</groupId>
<artifactId>reflections</artifactId>
<version>0.9.11</version>
</dependency>
<dependency>
<groupId>com.google.auto.service</groupId>
<artifactId>auto-service</artifactId>
<version>1.0-rc3</version>
</dependency>
<!-- Server side instrumentation -->
<dependency>
@ -236,7 +240,13 @@
</dependency>
<!-- JUnit tests -->
<!-- Tests -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.opentracing</groupId>
<artifactId>opentracing-mock</artifactId>
@ -287,6 +297,39 @@
<goal>shade</goal>
</goals>
<configuration>
<artifactSet>
<excludes>
<!-- If not, the shade plugin doesn't work -->
<exclude>io.opentracing.contrib:opentracing-agent</exclude>
<exclude>org.jboss.byteman:byteman</exclude>
</excludes>
</artifactSet>
<relocations>
<relocation>
<pattern>javassist</pattern>
<shadedPattern>shaded.javassist</shadedPattern>
</relocation>
<relocation>
<pattern>org.reflections</pattern>
<shadedPattern>shaded.org.reflections</shadedPattern>
</relocation>
<relocation>
<pattern>com.fasterxml</pattern>
<shadedPattern>shaded.com.fasterxml</shadedPattern>
</relocation>
<relocation>
<pattern>com.google</pattern>
<shadedPattern>shaded.com.google</shadedPattern>
</relocation>
<relocation>
<pattern>org.yaml</pattern>
<shadedPattern>shaded.org.yaml</shadedPattern>
</relocation>
<relocation>
<pattern>org.slf4j</pattern>
<shadedPattern>shaded.org.slf4j</shadedPattern>
</relocation>
</relocations>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>otarules.btm</resource>
@ -294,8 +337,7 @@
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<manifestEntries>
<Agent-Class>com.datadoghq.trace.agent.AnnotationsTracingAgent</Agent-Class>
<Premain-Class>com.datadoghq.trace.agent.AnnotationsTracingAgent
</Premain-Class>
<Premain-Class>com.datadoghq.trace.agent.AnnotationsTracingAgent</Premain-Class>
<Can-Redefine-Classes>true</Can-Redefine-Classes>
<Can-Retransform-Classes>true</Can-Retransform-Classes>
<Boot-Class-Path>./${project.artifactId}.jar</Boot-Class-Path>

View File

@ -11,15 +11,4 @@
<name>dd-trace-annotations</name>
<url>https://github.com/datadog/dd-trace-java</url>
<packaging>jar</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>

View File

@ -16,6 +16,7 @@ dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
testCompile group: 'org.assertj', name: 'assertj-core', version: '3.6.2'
testCompile group: 'org.mockito', name: 'mockito-core', version: '2.7.22'
testCompile group: 'ch.qos.logback', name: 'logback-classic' , version: '1.2.3'
}
shadowJar {

View File

@ -56,11 +56,6 @@
<artifactId>slf4j-api</artifactId>
<version>1.7.25</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
<!-- Required for the tracer resolver / annotation -->
<dependency>
@ -70,6 +65,12 @@
</dependency>
<!-- Testing dependencies -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
@ -126,7 +127,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.1</version>
<version>2.4.3</version>
<executions>
<execution>
<phase>package</phase>
@ -137,28 +138,21 @@
<relocations>
<relocation>
<pattern>com.fasterxml</pattern>
<shadedPattern>dd.com.fasterxml</shadedPattern>
<shadedPattern>shaded.com.fasterxml</shadedPattern>
</relocation>
<relocation>
<pattern>com.google</pattern>
<shadedPattern>shaded.com.google</shadedPattern>
</relocation>
<!--<relocation>-->
<!--<pattern>com.google</pattern>-->
<!--<shadedPattern>dd.com.google</shadedPattern>-->
<!--</relocation>-->
<relocation>
<pattern>org.yaml</pattern>
<shadedPattern>dd.org.yaml</shadedPattern>
<shadedPattern>shaded.org.yaml</shadedPattern>
</relocation>
<relocation>
<pattern>org.slf4j</pattern>
<shadedPattern>dd.org.slf4j</shadedPattern>
</relocation>
<relocation>
<pattern>ch.qos</pattern>
<shadedPattern>dd.ch.qos</shadedPattern>
<shadedPattern>shaded.org.slf4j</shadedPattern>
</relocation>
</relocations>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer" />
</transformers>
</configuration>
</execution>
</executions>

View File

@ -32,8 +32,8 @@
<url>https://github.com/datadog/dd-trace-java</url>
<connection>scm:git:git://github.com/datadog/dd-trace-java.git</connection>
<developerConnection>scm:git:git@github.com:datadog/dd-trace-java.git</developerConnection>
<tag>HEAD</tag>
</scm>
<tag>HEAD</tag>
</scm>
<modules>
<module>dd-trace</module>
@ -47,6 +47,7 @@
<maven.deploy.skip>true</maven.deploy.skip>
<opentracing.version>0.30.0</opentracing.version>
<java.version>1.7</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<distributionManagement>