小菜鸡_弱弱 2023-03-09 10:40 采纳率: 84.1%
浏览 24
已结题

filebeat采集慢日志

公司在做数据库慢日志的采集,大体逻辑是,用户在对应主机部署filebeat监控数据库,把产生的慢日志写入到kafka的topic中。
遇到个问题就是topic默认是有3个分区的,导致filebeat采集到的数据会被随机发送到任意分区。需求是希望同一个filebeat发送的数据保存的时候,默认都只会写入到一个分区里。研究半天好像只能手动创建一个单分区的topic,但是这样肯定不太行,这个有什么办法可以做到吗 万分感谢!

  • 写回答

4条回答 默认 最新

  • CSDN专家-sinJack 2023-03-09 10:49
    关注

    可以使用Kafka的分区器函数来解决这个问题。分区器函数确定消息被分配到哪个分区,因此,您可以编写一个自定义分区器函数来确保来自相同filebeat的所有消息都被分配到同一个分区。为此,您需要从Kafka的Partitioner接口中创建一个新的分区器,然后在配置文件中将其设置为您的主题的分区器。这样,每个filebeat都会将其消息发送到同一个分区,确保数据保存在一个分区中。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 3月21日
  • 已采纳回答 3月13日
  • 创建了问题 3月9日

悬赏问题

  • ¥15 SQL Server下载
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
  • ¥15 python爬取bilibili校园招聘网站
  • ¥30 求解达问题(有红包)
  • ¥15 请解包一个pak文件
  • ¥15 不同系统编译兼容问题
  • ¥100 三相直流充电模块对数字电源芯片在物理上它必须具备哪些功能和性能?
  • ¥30 数字电源对DSP芯片的具体要求