如何将 SLS 收集到的日志写入到 Mongodb

ponponon
  • 1.5k

服务以容器的形式跑在 k8s 集群上,然后 sls 会收集服务输出的日志

我让程序把每条日志以 json 的形式输出,sls 也是以一条一条 json 收集日志

图片.png

我希望 sls 收集到日志之后,可以自动导入到 mongodb 中。

sls 的日志分析能力只能说是残废,所以需要引入 mongodb

自动导入我希望是 sls 主动去写 mongodb

具体的 db 以及乱七八糟的东西都要可配置

而且希望可以实现每 1.5 秒写一次 mongodb

为什么是每 1.5s ?可以兼顾时效和效率,因为可以把 1.5s 内的 batch 批量写入,提高 TPS

但是我翻了半天文档也没有发现教程,who can help me?

回复
阅读 460
1 个回答

SLS的导出貌似只能支持阿里云自己的MaxComputer OSS EMR这几个选项,也没有其他的主动导出方式了。

如果不嫌麻烦的话,可以尝试使用脚本调用aliyunlog的命令行工具下载日志,然后写入mongodb。

aliyunlog log get_all_log xxxxx | python write2mongo.py
宣传栏