最近一段时间都在整理知识体系,还没整理完备,然后就被拉着做新的消息队列的接入,原来使用 kafka,切到了 rabbitmq。切换还算顺利,同时又有同事想做日志系统的想法。我突然灵光一线,为什么不能 filebeat + 消息队列实现集中式日志管理呢?
调研
- kafka 适合日志型 队列服务,采取订阅式的消息拉取
- rabbitmq 功能能丰富,适合业务逻辑使用,不建议用作日志收集
- 对比表格,不支持 markdonw 表格只能上源链接了: https://xiangdong1987.github.io/filebeats/2019/08/26/Blog-filebeat.html
- filebeats 支持 kafka 不支持 rabbitmq
折腾 filebeats
- Go 的 kafka 已经折腾过了,为了给自己练练手准备让 filebeats 支持 rabbitmq。
- 找到了 https://github.com/sidleal/mqttout
- 自己尝试使用发现新版 filebeat 的接口有些改变,而且他用的链接 rabbitmq 的底层库也比较老,唯有自己动手
- 在原有的基础上做了改动 https://github.com/xiangdong1987/mqttout 感觉能用,用的到大家随便用。
总结
学习的过程就是想到就去实践,不懂得就去学习,最后达成目标,估计这就是一个大龄程序员还能继续码代码的动力了。继续整理知识体系去了。留下一个思路,用 kafka+filebeats 实现模调系统以及日志系统。或者听听各位大神的意见。