Skywalking全链路追踪【学习笔记】

Skywalking全链路追踪的服务搭建,使用docker进行安装。

搭建服务

搭建【ES】

shell 复制代码
# 拉取
docker pull docker.elastic.co/elasticsearch/elasticsearch:7.17.10
# 启动
docker run -p 127.0.0.1:9200:9200 -p 127.0.0.1:9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.17.10

# 查看节点信息
curl -X GET "localhost:9200/_cat/nodes?v=true&pretty"

搭建【SkyWalking】

shell 复制代码
# skywalking-oap
docker run --name skywalking-oap \
--restart always \
-p 11800:11800 -p 12800:12800 -d \
-e TZ=Asia/Shanghai \
-e SW_ES_USER= \
-e SW_ES_PASSWORD= \
-e SW_STORAGE=elasticsearch7 \
-e SW_STORAGE_ES_CLUSTER_NODES=172.17.0.2:9200 \
-v /etc/localtime:/etc/localtime:ro \
apache/skywalking-oap-server:8.6.0-es7

# skywalking-ui
docker run -d \
--name skywalking-ui \
--restart always \
-p 9898:8080 \
--link skywalking-oap:skywalking-oap \
-e TZ=Asia/Shanghai \
-e SW_OAP_ADDRESS=172.17.0.4:12800 \
-v /etc/localtime:/etc/localtime:ro \
apache/skywalking-ui:8.6.0

访问这里:http://localhost:9898/ 就有界面了

项目代码整合

启动配置添加【Agent】

shell 复制代码
# idea 启动JVM配置
-javaagent:E:\data\skywalking-agent\skywalking-agent.jar
-DSW_AGENT_NAME=dream_order
-DSW_AGENT_COLLECTOR_BACKEND_SERVICES=192.168.0.1:11800

日志配置添加【日志】

xml 复制代码
    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        <!-- 日志的格式化,配置 %tid 占位符 -->
        <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
            <layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.TraceIdPatternLogbackLayout">
                <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%tid] [%thread] %-5level %logger{36} -%msg%n</Pattern>
            </layout>
        </encoder>
    </appender>

    <!-- 通过grpc上报日志到 skywalking oap-->
    <appender name="grpc-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>%d{yyyy-MM-dd HH:mm:ss.SSS} [%tid] [%thread] %-5level %logger{36} -%msg%n</Pattern>
            </layout>
        </encoder>
    </appender>

    <!-- 设置 Appender -->
    <root level="INFO">
        <appender-ref ref="console"/>
        <appender-ref ref="grpc-log"/>
    </root>

完成

(~ ̄▽ ̄)~


参考

SkyWalking 教程:https://skywalking.apache.org/zh/2020-04-19-skywalking-quick-start/

SkyWalking 单机搭建:https://www.jianshu.com/p/c24466ab3fb6

ES官方搭建:https://www.elastic.co/guide/en/elasticsearch/reference/7.17/docker.html#docker-compose-file

相关推荐
optimistic_chen15 分钟前
【Java EE进阶 --- SpringBoot】Mybatis - plus 操作数据库
数据库·spring boot·笔记·java-ee·mybatis·mybatis-plus
凉、介33 分钟前
ARM 总线技术 —— AMBA 入门
arm开发·笔记·学习
日更嵌入式的打工仔1 小时前
嵌入式入门:APP+BSP+HAL 三层分级架构浅析
笔记·单片机·嵌入式硬件·学习
since �1 小时前
前端转Java,从0到1学习教程
java·前端·学习
长桥夜波1 小时前
【第十八周】机器学习笔记07
人工智能·笔记·机器学习
摇滚侠1 小时前
Spring Boot 3零基础教程,yml文件中配置和类的属性绑定,笔记15
spring boot·redis·笔记
OliverH-yishuihan1 小时前
FPGA 入门 3 个月学习计划表
学习·fpga开发
weixin_405023371 小时前
webpack 学习
前端·学习·webpack
摇滚侠2 小时前
Spring Boot 3零基础教程,WEB 开发 HTTP 缓存机制 笔记29
spring boot·笔记·缓存
大白的编程日记.2 小时前
【Linux学习笔记】线程同步与互斥之生产者消费者模型
linux·笔记·学习