cd skywalking/
git submodule init
git submodule update
mvn clean package -DskipTests
因为需要设置 gRPC 的自动生成的代码目录,为源码目录,所以:
手工将下面提到的目录下的 grpc-java 和 java 目录设置为 IntelliJ IDEA 的源码目录(Sources Root)
/skywalking/apm-protocol/apm-network/target/generated-sources/protobuf
/skywalking/oap-server/server-core/target/generated-sources/protobuf
/skywalking/oap-server/server-receiver-plugin/receiver-proto/target/generated-sources/protobuf
/skywalking/oap-server/exporter/target/generated-sources/protobuf
手工将下面提到的目录下的 antlr4 目录设置为 IntelliJ IDEA 的源码目录(Sources Root)
/skywalking/oap-server/generate-tool-grammar/target/generated-sources
手工将下面提到的目录下的 oal 目录设置为 IntelliJ IDEA 的源码目录(Sources Root)
/skywalking/oap-server/generated-analysis/target/generated-sources
/skywalking/oap-server/server-starter/src/main/resources/application.yml
/skywalking/oap-server/server-starter/src/main/java/org/apache/skywalking/oap/server/starter/OAPServerStartUp.java
/skywalking/apm-webapp/src/main/java/org/apache/skywalking/apm/webapp/ApplicationStartUp.java<!--SkyWalking start-->
<!-- https://mvnrepository.com/artifact/org.apache.skywalking/apm-toolkit-trace -->
<dependency>
<groupId>org.apache.skywalking</groupId>
<artifactId>apm-toolkit-trace</artifactId>
<version>6.1.0</version>
</dependency>
<!--SkyWalking end-->
@Trace
@ApiOperation(tags = {"用户系统管理->用户管理->用户列表"}, value = "查询所有用户列表", notes = "查询所有用户列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
@ResponseBody
public List<SysUser> list() {
List<SysUser> sysUserList = sysUserService.findAll();
ActiveSpan.tag("一共有数据:", sysUserList.size() + "条");
log.info("当前 traceId={}", TraceContext.traceId());
return sysUserList;
}
你的 demo 项目在 IntelliJ IDEA 启动的时候加上 VM 参数上设置:
-javaagent:/你自己的路径/skywalking-agent.jar -Dskywalking.agent.application_code=my_app_001 -Dskywalking.collector.backend_service=localhost:11800
/skywalking/apm-sniffer/apm-agent/target/skywalking-agent.jarjava -javaagent:/你自己的路径/skywalking-agent.jar -Dskywalking.collector.backend_service=localhost:11800 -Dskywalking.agent.application_code=my_app_002 -jar my-project-1.0-SNAPSHOT.jar
FROM openjdk:8-jre-alpine
LABEL maintainer="tanjian20150101@gmail.com"
ENV SW_AGENT_NAMESPACE=java-agent-demo \
SW_AGENT_COLLECTOR_BACKEND_SERVICES=localhost:11800
COPY skywalking-agent /apache-skywalking-apm-bin/agent
COPY target/sky-demo-1.0-SNAPSHOT.jar /demo.jar
ENTRYPOINT java -javaagent:/apache-skywalking-apm-bin/agent/skywalking-agent.jar -jar /demo.jar
docker build -t hello-demo .
docker run -p 10101:10101 -e SW_AGENT_NAMESPACE=hello-world-demo-005 -e SW_AGENT_COLLECTOR_BACKEND_SERVICES=127.10.0.2:11800 hello-demo
cd skywalking/
git submodule init
git submodule update
mvn clean package -DskipTests