The AWS X-Ray Java Agent is a drop-in solution that enables the propagation of X-Ray traces within your Java web applications and servlet-based microservices. This includes automatic tracing for supported frameworks and libraries, including Spring, the AWS SDK, Apache HTTP clients, and JDBC-based SQL queries. The agent enables you to use the X-Ray SDK out of box, and requires no code changes to enable the basic propagation of traces. See the chart below for the current feature parity between the AWS X-Ray SDK and the AWS X-Ray Java Agent. The X-Ray Java Agent is implemented using the DiSCo library, a toolkit for building Java Agents in distributed environments. The AWS X-Ray Java Agent is compatible with Java 8 and 11. You must be able to modify the JVM arguments of your application to use the agent. To get an idea of how much impact the X-Ray Agent might have on your system, please see the benchmarking package.
Features
- The X-Ray Agent is configured by an external, user-provided JSON file
- The benefit of the X-Ray Agent operating as a plugin rather than a monolith is that you can add or remove other compatible DiSCo plugins as you please
- To add new DiSCo plugins, just add them as a JAR to your pluginPath directory and restart your app
- No additional configuration from the agent should be required
- Set up a fully-functioning Spring Boot application instrumented with the X-Ray Agent
- You must be able to modify the JVM arguments of your application to use the agent