代码拉取完成,页面将自动刷新
基于Logback自定义的一个Kafka Appender,可以实现日志异步自动格式化为JSON字符串并推送到Kafka Broker
下载代码打包并安装到本地Maven仓库mvn clean install
<dependency>
<groupId>org.example</groupId>
<artifactId>logback-kafka-appender</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<appender name="error_log2kafka" class="org.example.appender.kafka.KafkaAppender">
<!--不能有encoder这个标签-->
<!-- <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">-->
<!-- <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>-->
<!-- </encoder>-->
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
<!--日志发送topic,默认是errorMsgTopic-->
<topic>test</topic>
<!-- each <producerConfig> translates to regular kafka-client config (format: key=value) -->
<producerConfig>bootstrap.servers=127.0.0.1:9092</producerConfig>
<formatter class="org.example.appender.formatter.JsonFormatter">
<!--
Whether we expect the log message to be JSON encoded or not.
If set to "false", the log message will be treated as a string,
and wrapped in quotes. Otherwise it will be treated as a parseable
JSON object.
-->
<expectJson>false</expectJson>
<!--堆栈信息遍历的最大深度 默认是10-->
<maxDepth>50</maxDepth>
</formatter>
</appender>
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。