skywalking-java/docs/en/setup/service-agent/java-agent/README.md

77 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Setup java agent
1. Find `agent` folder in SkyWalking
2. Add `-javaagent:/path/to/skywalking-agent/skywalking-agent.jar` to VM argument.
New agent package looks like this
```
+-- skywalking-agent
+-- activations
apm-toolkit-log4j-1.x-activation.jar
apm-toolkit-log4j-2.x-activation.jar
apm-toolkit-logback-1.x-activation.jar
...
+-- config
agent.config
+-- plugins
apm-dubbo-plugin.jar
apm-feign-default-http-9.x.jar
apm-httpClient-4.x-plugin.jar
.....
skywalking-agent.jar
```
- Start your application.
## Advanced features
- All plugins are in `/plugins` folder. The plugin jar is active when it is in there. Remove the plugin jar, it disabled.
- The default logging output folder is `/logs`.
## Install javaagent FAQs
- Linux Tomcat 7, Tomcat 8
Change the first line of `tomcat/bin/catalina.sh`.
```shell
CATALINA_OPTS="$CATALINA_OPTS -javaagent:/path/to/skywalking-agent/skywalking-agent.jar"; export CATALINA_OPTS
```
- Windows Tomcat 7, Tomcat 8
Change the first line of `tomcat/bin/catalina.bat`.
```shell
set "CATALINA_OPTS=-javaagent:/path/to/skywalking-agent/skywalking-agent.jar"
```
- JAR file
Add `-javaagent` argument to command line in which you start your app. And make sure to add it before the `-jar` argument. eg:
```shell
java -javaagent:/path/to/skywalking-agent/skywalking-agent.jar -jar yourApp.jar
```
## Supported middlewares, frameworks and libraries
See [supported list](Supported-list.md).
## Plugins
Java agent plugins are all pluggable. Optional plugins could be provided by source codes or in `optional-plugins` folder under agent.
For using these plugins, you need to compile source codes by yourself, or copy the certain plugins to `/plugins`.
Now, we have the following known plugins.
* [Trace Spring beans](agent-optional-plugins/Spring-bean-plugins.md)
* [Trace Oracle and Resin](agent-optional-plugins/Oracle-Resin-plugins.md)
* [Filter traces through custom services](agent-optional-plugins/trace-ignore-plugin.md)
## Advanced Features
* [Override settings through System.properties](en/java-agent/Setting-override.md)
* [Direct uplink and disable naming discovery](en/java-agent/Direct-uplink.md)
* [Open TLS](en/java-agent/TLS.md)
* [Namespace Isolation](en/java-agent/Namespace.md)
* [Token Authentication](en/java-agent/Token-auth.md)
* Application Toolkit
* [Overview](en/java-agent/Applicaton-toolkit.md)
* [Use SkyWalking OpenTracing compatible tracer](en/java-agent/Opentracing.md)
* Integration with log frameworks
* [log4j](en/java-agent/Application-toolkit-log4j-1.x.md)
* [log4j2](en/java-agent/Application-toolkit-log4j-2.x.md)
* [logback](en/java-agent/Application-toolkit-logback-1.x.md)
* [Trace by SkyWalking manual APIs](en/java-agent/Application-toolkit-trace.md)
* [Trace across threads](en/java-agent/Application-toolkit-trace-cross-thread.md)
# Test
If you are interested in plugin compatible tests or agent performance, see the following reports.
* [Plugin Test](https://github.com/SkywalkingTest/agent-integration-test-report)
* [Java Agent Performance Test](https://skywalkingtest.github.io/Agent-Benchmarks/)