基于DemonSet方式收集容器日志输出实践
前言
根据和之前公司的同事交流,filebeat是以DaemonSet形式跑采集日志,所有容器的日志都是控制台输出(daemonset 是每个节点只跑一个filebeat 是不知道pod中的java的日志 挂到了宿主机的哪个路径了 ),不像LogTail做了二次改造,通过DaemonSet 既可以收集容器文本日志还可以收集控制台日志。所以跑容器化:
那原来ecs打的日志是在某个路径下的 程序要改相应代码路径了,要改成全部标准输出。
参考
## 理论和配置参考我的另外的博文
https://blog.csdn.net/knight_zhou/article/details/121476695
理解iLogtail采集容器日志原理
### logtail能采集文本日志的原理
https://developer.aliyun.com/article/985948
iLogtail支持全场景的容器数据采集,iLogtail通过docker_center插件与节点上的容器运行时进行通信,发现节点的容器列表并维护容器和日志采集路径映射。然后,对于容器标准输出,iLogtail使用input_docker_stdout插件对日志进行采集,包括容器筛选和多行切分等步骤;对于容器文件则使用input_docker_event插件结合C++内核实现,前者负责容器筛选,后者提供高效的文件发现、采集能力