Feat: logs 适配 es/loki/otel 等日志系统
zzmark opened this issue · 3 comments
zzmark commented
What would you like to be added:
- logs 日志收集功能,增加 es、loki、otel 等系统的写入能力
Why is this needed:
目前我们使用 categraf 作为中间件、脚本等运维日志的收集工具,但是后端无论是http还是kafka,都需要额外的逻辑去对接日志格式。
因此维护了修改的分支,补了些额外支持
看看是否有这方面的需要,我可以整理好提交一些功能
Describe the solution you'd like
我这里已经实现的有:
- loki: 采用 http json 格式,服务端解析性能一般(我们日志量小,没有压力)。也做了 proto 版本,但没有上生产
- es: 增加 ECS 编码格式,通过写入 kafka 中转,logstash 入 ES,没有对接 es 的 bluk (es的网络没有打通到边缘)
可以做的适配:
- otel:loki 3.0+ 支持此格式输入,不过我们没有 OpenTelemetry 设施,这方面没什么适配动力。若需求的人多可以提供 patch
Additional context
kongfei605 commented
欢迎PR , 之前没有直接写入ES,主要是考虑答疑和排查成本,其他像loki是因为人力问题了
zzmark commented
欢迎PR , 之前没有直接写入ES,主要是考虑答疑和排查成本,其他像loki是因为人力问题了
直写ES有实施方面的风险,ES的写入不适合这种海量client小批次,压力不小。
但是ES定义的 ECS 格式很具有代表性,使用此格式入kafka后,有诸多中间件可以做入库,简单、可靠、高效。
作为方案推荐支持 ECS格式,入kafka,不做 http bluk 直写ES。
过两天我提交PR