摘要:本文介绍使用收集容器日志的方法。提供了很多,默认情况下使用的,它会把容器打到的日志收集起来存到文件中,所看到的日志就是来自于这些文件。
本文介绍使用Fluentd收集standalone容器日志的方法。
Docker提供了很多logging driver,默认情况下使用的json-file,它会把容器打到stdout/stderr的日志收集起来存到json文件中,docker logs所看到的日志就是来自于这些json文件。
当有多个docker host的时候你会希望能够把日志汇集起来,集中存放到一处,本文讲的是如何通过fluentd logging driver配合fluentd来达成这一目标。
目标:
将standalone容器打到stdout/stderror的日志收集起来
收集的日志根据容器名分开存储
日志文件根据每天滚动
第一步:配置Fluentd实例首先是配置文件fluent.conf:
@type file path /fluentd/log/${tag}/${tag} append true @type single_value message_key log @type file timekey 1d timekey_wait 10m flush_mode interval flush_interval 30s
新建一个目录比如/home/ubuntu/container-logs,并赋予权限chmod 777 /home/ubuntu/container-logs。
然后启动Fluentd实例,这里使用的Docker方式:
docker run -it -d -p 24224:24224 -v /path/to/conf/fluent.conf:/fluentd/etc/fluent.conf -v /home/ubuntu/container-logs:/fluentd/log fluent/fluentd:v1.3第二步:指定容器的logging driver
在启动容器的时候执行使用fluentd作为logging driver:
docker run -d ... --log-driver=fluentd --log-opt fluentd-address=第三步:观察日志:24224 --log-opt mode=non-blocking --log-opt tag={{.Name}}
到/home/ubuntu/container-logs目录下能够看到类似这样的目录结构:
. └──参考文档└── .20190123.log
Configure logging drivers
Customize log driver output
Use Fluentd logging driver
Docker CLI - run
Fluentd
Fluentd - out_file
Fluentd - formatter_single_value
Fluentd - buf_file
Fluentd - buffer
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/28075.html
摘要:来自用户的最佳实践分享,如何用阿里开源的日志收集工具收集机器上所有应用日志。具有如下特性一个单独的进程收集机器上所有容器的日志。无论是强大的阿里云日志服务,还是比较流行的组合,甚至是,都能把日志投递到正确的地点。 来自用户的最佳实践分享,如何用阿里开源的Docker日志收集工具fluentd-pilot收集机器上所有Docker应用日志。 fluentd-pilot简介 fluentd...
摘要:我推荐你使用进行日志收集,将作为的出口。集群目前暂时没有提供日志查看机制。以如下的形式启动容器,容器日志将发往配置的。 【作者barnett】本文介绍了k8s官方提供的日志收集方法,并介绍了Fluentd日志收集器并与其他产品做了比较。最后介绍了好雨云帮如何对k8s进行改造并使用ZeroMQ以消息的形式将日志传输到统一的日志处理中心。 容器日志存在形式 目前容器日志有两种输出形式: ...
摘要:我推荐你使用进行日志收集,将作为的出口。集群目前暂时没有提供日志查看机制。以如下的形式启动容器,容器日志将发往配置的。 【作者barnett】本文介绍了k8s官方提供的日志收集方法,并介绍了Fluentd日志收集器并与其他产品做了比较。最后介绍了好雨云帮如何对k8s进行改造并使用ZeroMQ以消息的形式将日志传输到统一的日志处理中心。 容器日志存在形式 目前容器日志有两种输出形式: ...
摘要:使用管理日志标签空格分隔日志管理本文作者是,本文原文地址是当前版本的一个问题就是日志管理。任何长时间运行的进程产生的日志都是冗长的,这会导致仔细检查非常困难。所有文件这时能被转发到一个中央日志系统。 使用 Fluentd 管理 Docker 日志 标签(空格分隔): Fluentd Docker 日志管理 本文作者是 jwilder,本文原文地址是 Docker Log M...
阅读 750·2023-04-26 03:04
阅读 2840·2021-11-15 18:10
阅读 1170·2021-09-03 10:28
阅读 1107·2019-08-30 15:53
阅读 861·2019-08-30 12:45
阅读 1933·2019-08-30 11:03
阅读 2837·2019-08-29 14:01
阅读 2909·2019-08-28 18:24