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

相关推荐
走在路上的菜鸟12 小时前
Android学Dart学习笔记第十节 循环
android·笔记·学习·flutter
Xudde.12 小时前
friendly靶机渗透
笔记·学习·安全·web安全·php
轻赚时代12 小时前
PC 端 AI 图像处理工具实操指南:抠图 / 证件照优化 / 智能擦除全流程解析
图像处理·人工智能·经验分享·笔记·深度学习·创业创新·学习方法
老王熬夜敲代码12 小时前
泛型编程的差异抽象思想
开发语言·c++·笔记
客梦13 小时前
Java教室管理系统
java·笔记
拼好饭和她皆失13 小时前
Java学习---Arrays类
java·开发语言·学习
代码游侠13 小时前
学习笔记——GDB调试工具
linux·开发语言·笔记·学习
行走的夜13 小时前
高质量测试用例设计:金字塔模型+系统化工作流+方法体系+改进机制
学习·测试用例
QT 小鲜肉13 小时前
【孙子兵法之中篇】007. 孙子兵法·军争篇
人工智能·笔记·读书·孙子兵法
思成不止于此13 小时前
MySQL 约束详解:保证数据完整性的核心机制
数据库·笔记·学习·mysql