opentelemetry-java-instrume.../examples/spring-boot-jdbc
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
..
gradle/wrapper Use workflows in Circle to test Java 7 and 8 2018-01-22 13:46:50 -05:00
out/production/resources Lots of renaming 2018-01-09 10:02:06 +10:00
src/main Lots of renaming 2018-01-09 10:02:06 +10:00
README.md Lots of renaming 2018-01-09 10:02:06 +10:00
docker-compose.yml Lots of renaming 2018-01-09 10:02:06 +10:00
gradlew Lots of renaming 2018-01-09 10:02:06 +10:00
gradlew.bat Lots of renaming 2018-01-09 10:02:06 +10:00
spring-boot-jdbc.gradle Lots of renaming 2018-01-09 10:02:06 +10:00

README.md

Spring-boot

This project provides a simple API using Spring Boot. The framework is supported and auto-instrumentation is used to trace the endpoints.

Run the demo

Prerequisites

Be sure to build the project so that the latest version of dd-trace-java components are used. You can build all libraries and examples launching from the dd-trace-java root folder:

./gradlew clean shadowJar bootRepackage

Then you can launch the Datadog agent as follows:

cd examples/spring-boot-jdbc
DD_API_KEY=<your_datadog_api_key> docker-compose up -d

A valid DD_API_KEY is required to post collected traces to the Datadog backend.

Run the application

To launch the application, just:

./gradlew bootRun

Note: The bootRun Gradle command appends automatically the -javaagent argument, so that you don't need to specify the path of the Java Agent. Gradle executes the :examples:spring-boot-jdbc:bootRun task until you stop it.

Or as an executable jar:

java -javaagent:../../dd-java-agent/build/libs/dd-java-agent-{version}.jar -Ddd.service.name=spring-boot-jdbc -jar build/libs/spring-boot-jdbc-demo.jar

Generate traces

Once the Gradle task is running. Go to the following urls:

Then get back to Datadog and wait a bit to see a trace coming.

Auto-instrumentation with the dd-trace-agent

The instrumentation is entirely done by the datadog agent which embed a set of rules that automatically recognizes & instruments:

  • The java servlet filters
  • The JDBC driver

The Java Agent embeds the OpenTracing Java Agent.