SkyWalking 集成日志框架

logback官方配置

引入依赖

XML 复制代码
<!‐‐ apm‐toolkit‐logback‐1.x ‐‐>
<dependency>
    <groupId>org.apache.skywalking</groupId>
    <artifactId>apm‐toolkit‐logback‐1.x</artifactId>
    <version>8.5.0</version>
</dependency>

添加 logback-spring.xml

XML 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <!-- 引入 Spring Boot 默认的 logback XML 配置文件  -->
    <include resource="org/springframework/boot/logging/logback/defaults.xml"/>


    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        <!-- 日志的格式化 -->
        <encoder  class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
            <layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.TraceIdPatternLogbackLayout">
                <Pattern>-%clr(%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} [%tid] %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}</Pattern>
            </layout>
        </encoder>

    </appender>

    <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.mdc.TraceIdMDCPatternLogbackLayout">
                <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%X{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>

</configuration>
  • 打开agent/config/agent.config配置文件,添加如下配置信息:
XML 复制代码
plugin.toolkit.log.grpc.reporter.server_host=${SW_GRPC_LOG_SERVER_HOST:192.168.3.100}
plugin.toolkit.log.grpc.reporter.server_port=${SW_GRPC_LOG_SERVER_PORT:11800}
plugin.toolkit.log.grpc.reporter.max_message_size=${SW_GRPC_LOG_MAX_MESSAGE_SIZE:10485760}
plugin.toolkit.log.grpc.reporter.upstream_timeout=${SW_GRPC_LOG_GRPC_UPSTREAM_TIMEOUT:30}

以上配置是默认配置信息, agent与oap在本地的可以不配

配置名解释默认值

|---------------------------------------------------|-------------------------|-----------|
| 配置名 | 解释 | 默认值 |
| plugin.toolkit.log.transmit_formatted | 是否以格式化或未格式化的格式传输记录的数据 | true |
| plugin.toolkit.log.grpc.reporter.server_host | 指定要向其报告日志数据的grpc服务器的主机 | 127.0.0.1 |
| plugin.toolkit.log.grpc.reporter.server_port | 指定要向其报告日志数据的grpc服务器的端口 | 11800 |
| plugin.toolkit.log.grpc.reporter.max_message_size | 指定grpc客户端要报告的日志数据的最大大小 | 10485760 |
| plugin.toolkit.log.grpc.reporter.upstream_timeout | 客户端向上游发送数据时将超时多长时间。单位是秒 | 30 |

日志效果

相关推荐
桥边驿语人9 天前
Skywalking 的本地开发配置
skywalking
斯普信专业组10 天前
Skywalking从部署集成到动态调优(上)
运维·skywalking·动态调优
斯普信专业组10 天前
Skywalking从部署集成到动态调优(下)
运维·skywalking·动态调优
一叶飘零_sweeeet10 天前
从 “黑盒“ 到 “透明“:SkyWalking 实战指南 —— 让微服务问题无所遁形
分布式·微服务·skywalking·分布式链路追踪
陈平安Java and C25 天前
分布式链路追踪-SkyWalking
分布式·skywalking
一叶飘零_sweeeet1 个月前
从 0 到 1 精通 SkyWalking:分布式系统的 “透视镜“ 技术全解析
java·skywalking
斯普信专业组1 个月前
SkyWalking 核心概念与智能探针工作原理深度揭秘(上)
运维·skywalking
XT46252 个月前
SkyWalking 支持的告警通知方式(Alarm Hooks)类型
skywalking
搞不懂语言的程序员2 个月前
docker 部署Skywalking
docker·容器·skywalking
观测云2 个月前
通过 KafkaMQ 接入Skywalking 数据最佳实践
skywalking