SpringBoot 整合 SkyWalking 8.X (包含 Logback 日志采集)

准备工作

参考项目: https://gitee.com/JavaLionLi/RuoYi-Cloud-Plus

SkyWalking 服务搭建

安装 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"

Agent 探针下载

下载地址: https://skywalking.apache.org/downloads/ 注意这里下载的版本要和后续的maven依赖版本保持一致
这里我们下载最新的8.12.0SpringBoot 整合 SkyWalking 8.X (包含 Logback 日志采集)

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

SpringBoot 整合 SkyWalking 8.X (包含 Logback 日志采集)

整合 Springboot

整合链路分析

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

SpringBoot 整合 SkyWalking 8.X (包含 Logback 日志采集)
-javaagent:D:skyskywalking-agent.jar
-Dskywalking.agent.service_name=ruoyi-auth
-Dskywalking.collector.backend_service=127.0.0.1:11800

javaagent 探针对应的盘符位置
service_name 服务名
backend_service skywalking的地址

启动服务

查看最上面的扫描日志 是否扫描了探针插件

SpringBoot 整合 SkyWalking 8.X (包含 Logback 日志采集)

进入UI界面

点击右上角 设置自动更新

SpringBoot 整合 SkyWalking 8.X (包含 Logback 日志采集)

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

SpringBoot 整合 SkyWalking 8.X (包含 Logback 日志采集)

整合 logback 日志采集

增加 maven 依赖

注意此处版本需与下载的 agent 探针版本对应

<!-- skywalking 整合 logback -->
<dependency>
    <groupId>org.apache.skywalking</groupId>
    <artifactId>apm-toolkit-logback-1.x</artifactId>
    <version>8.12.0</version>
</dependency>
<dependency>
    <groupId>org.apache.skywalking</groupId>
    <artifactId>apm-toolkit-trace</artifactId>
    <version>8.12.0</version>
</dependency>

增加 logback.xml 配置

<!-- skywalking 采集日志 -->
<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-8</charset>
    </encoder>
</appender>

<root level="info">
    <appender-ref ref="sky_log"/>
</root>

启动服务查看控制台

SpringBoot 整合 SkyWalking 8.X (包含 Logback 日志采集)

日志成功推送


原文始发于微信公众号(狮子领域 程序圈):SpringBoot 整合 SkyWalking 8.X (包含 Logback 日志采集)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/215117.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!