Docker如何支持多种日志方案

56次阅读
没有评论

共计 1061 个字符,预计需要花费 3 分钟才能阅读完成。

本篇文章给大家分享的是有关 Docker 如何支持多种日志方案,丸趣 TV 小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着丸趣 TV 小编一起来看看吧。

将容器日志发送到 STDOUT 和 STDERR 是 Docker 的默认日志行为。实际上,Docker 提供了多种日志机制帮助用户从运行的容器中提取日志信息。这些机制被称作 logging driver。 

Docker 的默认 logging driver 是  json-file。

# docker info |grep  Logging Driver 
Logging Driver: json-file

如果容器在启动时没有特别指明,就会使用这个默认的 logging driver。

json-file  会将容器的日志保存在 json 文件中,Docker 负责格式化其内容并输出到 STDOUT 和 STDERR。

我们可以在 Host 的容器目录中找到这个文件,器路径为  /var/lib/docker/containers/ contariner ID / contariner ID -json.log

比如我们可以查看前面 httpd 容器 json 格式的日志文件。

可以看到 5 条日志记录。

除了  json-file,Docker 还支持多种 logging driver。档  https://docs.docker.com/engine/admin/logging/overview/#supported-logging-drivers

none  是 disable 容器日志功能。

syslog  和  journald  是 Linux 上的两种日志管理服务。

awslogs、splunk  和  gcplogs  是第三方日志托管服务。

gelf  和  fluentd  是两种开源的日志管理方案,我们会在后面分别讨论。

容器启动时可以通过  –log-driver  指定使用的 logging driver。如果要设置 Docker 默认的 logging driver,需要修改 Docker daemon 的启动脚本,指定  –log-driver  参数,比如:

ExecStart=/usr/bin/dockerd -H fd:// --log-driver=syslog --log-opt ......

每种 logging driver 都有自己的  –log-opt。

以上就是 Docker 如何支持多种日志方案,丸趣 TV 小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注丸趣 TV 行业资讯频道。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-25发表,共计1061字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)