参考项目: https://gitee.com/JavaLionLi/RuoYi-Cloud-Plus
安装 elasticsearch 7.17.6 skywalking-oap 8.9.1 skywalking-ui 8.9.1
这里使用 docker-compose 编排容器部署
version: '3'
services:
elasticsearch:
image: elasticsearch:7.17.6
container_name: elasticsearch
ports:
- "9200:9200"
- "9300:9300"
environment:
# 设置集群名称
cluster.name: elasticsearch
# 以单一节点模式启动
discovery.type: single-node
ES_JAVA_OPTS: "-Xms512m -Xmx512m"
volumes:
- /docker/elk/elasticsearch/plugins:/usr/share/elasticsearch/plugins
- /docker/elk/elasticsearch/data:/usr/share/elasticsearch/data
- /docker/elk/elasticsearch/logs:/usr/share/elasticsearch/logs
network_mode: "host"
sky-oap:
image: apache/skywalking-oap-server:8.9.1
container_name: sky-oap
ports:
- "11800:11800"
- "12800:12800"
environment:
JAVA_OPTS: -Xms512m -Xmx1g
#记录数据的有效期,单位天
SW_CORE_RECORD_DATA_TTL: 7
#分析指标数据的有效期,单位天
SW_CORE_METRICS_DATA_TTL: 7
SW_STORAGE: elasticsearch
SW_STORAGE_ES_CLUSTER_NODES: 127.0.0.1:9200
TZ: Asia/Shanghai
network_mode: "host"
sky-ui:
image: apache/skywalking-ui:8.9.1
container_name: sky-ui
ports:
- "18080:18080"
environment:
SW_OAP_ADDRESS: http://127.0.0.1:12800
TZ: Asia/Shanghai
JAVA_OPTS: "-Dserver.port=18080"
depends_on:
- sky-oap
network_mode: "host"
下载地址: https://skywalking.apache.org/downloads/
注意这里下载的版本要和后续的maven依赖版本保持一致
这里我们下载最新的8.12.0

下载之后解压到D盘单独的目录 注意一定要全解压(每个文件都有作用)

在idea对应的springboot启动方法内增加jvm参数

-javaagent:D:\sky\skywalking-agent.jar
-Dskywalking.agent.service_name=ruoyi-auth
-Dskywalking.collector.backend_service=127.0.0.1:11800
javaagent 探针对应的盘符位置
service_name 服务名
backend_service skywalking的地址
查看最上面的扫描日志 是否扫描了探针插件

点击右上角 设置自动更新

几秒后 收集到了对应服务的数据

logback 日志采集maven 依赖注意此处版本需与下载的 agent 探针版本对应
<dependency>
<groupId>org.apache.skywalkinggroupId>
<artifactId>apm-toolkit-logback-1.xartifactId>
<version>8.12.0version>
dependency>
<dependency>
<groupId>org.apache.skywalkinggroupId>
<artifactId>apm-toolkit-traceartifactId>
<version>8.12.0version>
dependency>
<appender name="sky_log" class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.log.GRPCLogClientAppender">
<encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
<layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.TraceIdPatternLogbackLayout">
<pattern>[%tid] ${console.log.pattern}pattern>
layout>
<charset>utf-8charset>
encoder>
appender>
<root level="info">
<appender-ref ref="sky_log"/>
root>

日志成功推送