springboot整合kafka实现logback收集日志

系列博客链接 http://know.himygirl.cn/topic/kafka/logback-to-kafka/

整合logback收集日志到kafka

简述

本示例旨在快速整合kafka的使用,调参,优化,压测性能等操作;不建议直接作为生产使用,配置化,异常容错等等待处理;
比如:容错机制
- 如果kafka服务宕机,输出到本地文件,可用其他方式重新load数据记录;
- 也可直接用kafka客户端写入到kafka中,手动针对异常做容错(如,写入文件)

环境:

框架 版本或描述
spring-boot 1.5.18.RELEASE
kafka-clients 0.10.1.1

注意:分支支持的版本,技术文档更新,版本的对应关系,开始示例前确保kafka服务已启动等

建议所有代理> = 0.10.xx的用户(以及所有spring boot 1.5.x用户)使用spring-kafka版本1.3.x或更高版本
Spring Boot 1.5(EOL)用户应使用1.3.x(Boot依赖管理默认情况下将使用1.1.x,因此应予以覆盖)。
Spring Boot 2.1(EOL)用户应使用2.2.x(引导依赖性管理将使用正确的版本)。
Spring Boot 2.2用户应使用2.3.x(引导依赖性管理将使用正确的版本)或将版本覆盖为2.4.x)。
Spring Boot 2.3用户应使用2.5.x(引导依赖项管理将使用正确的版本)。
Spring Boot 2.4用户应该使用2.6.x(Boot依赖管理将使用正确的版本)

Get Started

  • 1.pom依赖
  • 2.logback.xml配置
  • 3.自定义KafkaAppender
  • 4.测试代码

1.kafka相关pom依赖:(0.10.1.1版本)

<dependency>
	<groupId>org.apache.kafka</groupId>
	<artifactId>kafka-clients</artifactId>
	<version>${kafka.client.version}</version>
	<scope>compile</scope>
	<exclusions>
		<exclusion>
			<artifactId>slf4j-api</artifactId>
			<groupId>org.slf4j</groupId>
		</exclusion>
	</exclusions>
</dependency>
<dependency>
	<groupId>org.apache.kafka</groupId>
	<artifactId>kafka_2.11</artifactId>
	<version>${kafka.client.version}</version>
	<exclusions>
		<exclusion>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-log4j12</artifactId>
		</exclusion>
	</exclusions>
</dependency>

sl4j依赖,自行选择;此处整合springboot,未单独引入

2.logback的配置

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
	<!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径 -->
	<property name="LOG_HOME" value="logs" />
	<property name="SYS_NAME" value="system" />
	<p
  • 7
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值