logback-kafka.xml
1.96 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<!-- 本地服务的名称 -->
<springProperty scope="context" name="app_name" source="spring.application.name"/>
<contextName>${app_name}</contextName>
<!-- 包含 logback 的基础配置,路径就是所在包 -->
<include resource="com/csbr/cloud/common/logback/logback-base.xml"/>
<!-- 增加skywalking配置日志收集-->
<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>
<!-- 控制打印输出的内容 -->
<root level="INFO">
<appender-ref ref="FILE_ERROR"/>
<!-- <appender-ref ref="FILE_WARN"/>-->
<appender-ref ref="FILE_INFO"/>
<!-- 控制台 输出-->
<appender-ref ref="STDOUT"/>
<appender-ref ref="grpc-log"/>
</root>
<springProperty scope="context" name="kafka_server" source="spring.kafka.bootstrap-servers" />
<springProperty scope="context" name="topci_prefix" source="csbr.kafka.topic-prefix" />
<!-- 输出到Kafka -->
<appender name="kafkaAppender" class="com.csbr.cloud.common.logback.KafkaAppender">
<bootstrapServers>${kafka_server}</bootstrapServers>
<topic>csbr_fbt_log</topic>
<prefix>${topci_prefix}</prefix>
<formatter class="com.csbr.cloud.common.logback.JsonFormatter">
<expectJson>false</expectJson>
</formatter>
</appender>
<logger name="com.csbr.cloud.common.exception.GlobalExceptionHandler" level="ERROR" additivity="true">
<appender-ref ref="kafkaAppender"></appender-ref>
</logger>
</configuration>