公司在做数据库慢日志的采集,大体逻辑是,用户在对应主机部署filebeat监控数据库,把产生的慢日志写入到kafka的topic中。
遇到个问题就是topic默认是有3个分区的,导致filebeat采集到的数据会被随机发送到任意分区。需求是希望同一个filebeat发送的数据保存的时候,默认都只会写入到一个分区里。研究半天好像只能手动创建一个单分区的topic,但是这样肯定不太行,这个有什么办法可以做到吗 万分感谢!
filebeat采集慢日志
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
4条回答 默认 最新
- CSDN专家-sinJack 2023-03-09 10:49关注
可以使用Kafka的分区器函数来解决这个问题。分区器函数确定消息被分配到哪个分区,因此,您可以编写一个自定义分区器函数来确保来自相同filebeat的所有消息都被分配到同一个分区。为此,您需要从Kafka的Partitioner接口中创建一个新的分区器,然后在配置文件中将其设置为您的主题的分区器。这样,每个filebeat都会将其消息发送到同一个分区,确保数据保存在一个分区中。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 想用@vueuse 把项目动态改成深色主题,localStorge里面的vueuse-color-scheme一开始就给我改成了dark,不知道什么原因(相关搜索:背景颜色)
- ¥15 flask实现搜索框访问数据库
- ¥15 mrk3399刷完安卓11后投屏调试只能显示一个设备
- ¥20 白日门传奇少一个启动区服和启动服务器的快捷键,东西都是全的 , 他们说套一个出来就行了 但我就是弄不好,谁看看,
- ¥100 如何用js写一个游戏云存档
- ¥15 ansys fluent计算闪退
- ¥15 有关wireshark抓包的问题
- ¥15 需要写计算过程,不要写代码,求解答,数据都在图上
- ¥15 向数据表用newid方式插入GUID问题
- ¥15 multisim电路设计