# skywalking-demo **Repository Path**: qkzztx_admin/skywalking-demo ## Basic Information - **Project Name**: skywalking-demo - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-01-13 - **Last Updated**: 2024-01-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # skywalking demo 官网: [https://skywalking.apache.org/](https://skywalking.apache.org/) 需要下载: [https://archive.apache.org/dist/skywalking/8.3.0/](https://archive.apache.org/dist/skywalking/8.3.0/) Agent,下载后把agent文件复制到某个文件夹,客户端应用运行的时候需要 参考博客: [https://blog.csdn.net/qq_31279701/article/details/124191651](https://blog.csdn.net/qq_31279701/article/details/124191651) [https://blog.csdn.net/ltx1472580369/article/details/112572529](https://blog.csdn.net/ltx1472580369/article/details/112572529) ## 镜像 ```shell # 拉取镜像 docker pull elasticsearch:7.6.2 docker pull apache/skywalking-oap-server:8.3.0-es7 docker pull apache/skywalking-ui:8.3.0 ``` ## 创建 ElasticSearch容器 ```shell docker run --restart=always -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms512m -Xmx512m" --name='elasticsearch' --cpuset-cpus="1" -m 2G -d elasticsearch:7.6.2 ``` 验证 [http://localhost:9200](http://localhost:9200) ## 创建OAP容器 ```shell docker run --name oap --restart always -d --restart=always -e TZ=Asia/Shanghai -p 12800:12800 -p 11800:11800 --link elasticsearch:elasticsearch -e SW_STORAGE=elasticsearch7 -e SW_STORAGE_ES_CLUSTER_NODES=elasticsearch:9200 apache/skywalking-oap-server:8.3.0-es7 ``` ## 创建SkywalkingUI容器 ```shell docker run -d --name skywalking-ui --restart=always -e TZ=Asia/Shanghai -p 8088:8080 --link oap:oap -e SW_OAP_ADDRESS=oap:12800 apache/skywalking-ui:8.3.0 ``` 验证: [http://localhost:8088](http://localhost:8088) ## 运行客户端程序 java命令行添加VM参数: -javaagent:D:\skywalking\skywalking-agent\skywalking-agent.jar -Dskywalking.agent.service_name=skywalking-service -Dskywalking.collector.backend_service=127.0.0.1:11800 例子 ```shell java -javaagent:D:\skywalking\skywalking-agent\skywalking-agent.jar -Dskywalking.agent.service_name=skywalking-service -Dskywalking.collector.backend_service=127.0.0.1:11800 -jar app.jar ``` 说明: - javaagent:skywalking的jar文件位置 - skywalking.agent.service_name=skywalking-service 表示运行的服务名称 - -Dskywalking.collector.backend_service=127.0.0.1:11800 表示skywalking服务端地址 ![image/本地agent虚拟机参数.png](./image/本地agent虚拟机参数.png) ## 添加链路追踪 ```java /** * 默认埋点了mvc和mysql对接 * 自定义埋点:方法上加 @Trace * 记录参数和返回信息,在方法上增加@Tag或者@Tags **/ @ApiOperation("根据ids获取用户信息") @GetMapping("/getUsersByUserIds") @Trace @Tags({@Tag(key = "param1", value = "arg[0]"), @Tag(key = "R", value = "returnedObj")}) public R> getUsersByUserIds(@RequestParam @ApiParam(value = "用户ids") Collection userIds) { return R.ok(sysUserService.listByIds(userIds)); } ```