by Devin Yang

建立于: 8年前 ( 更新: 8年前 )

Docker内建相当多的日志机制,帮我们取得在container内运行的服务信息。
这些机制(mechanisms)我们通常称为logging drivers.

如果要变更默认的日志日志驱动进程(logging drivers),可在daemon.json文档设置login-driver进程的名称。这个文件通常放在linux系统的/etc/docker目录下,或在Windows则是C:\ProgramData\docker\config\
Docker默认的logging driver是json-file,把他变更为syslog。


在MacOS的系统,可以由Docker喜好设置进行设更:
daemon.json
重启后会发觉日志日志变到了syslog了。


关於更多的Docker Deamon组态设置,可以参考官方连结:
https://docs.docker.com/engine/reference/commandline/dockerd/#daemon-configuration-file

用命令来查询默认的Logging Driver.
docker info |grep Logging

下方为支持的Loggin drivers列表:
Driver Description
none No logs will be available for the container and  docker logs  will not return any output.
json-file The logs are formatted as JSON. The default logging driver for Docker.
syslog Writes logging messages to the  syslog  facility. The  syslog daemon must be running on the host machine.
journald Writes log messages to  journald . The  journald  daemon must be running on the host machine.
gelf Writes log messages to a Graylog Extended Log Format (GELF) endpoint such as Graylog or Logstash.
fluentd Writes log messages to  fluentd  (forward input). The  fluentd daemon must be running on the host machine.
awslogs Writes log messages to Amazon CloudWatch Logs.
splunk Writes log messages to  splunk  using the HTTP Event Collector.
etwlogs Writes log messages as Event Tracing for Windows (ETW) events. Only available on Windows platforms.
gcplogs Writes log messages to Google Cloud Platform (GCP) Logging.
logentries Writes log messages to Rapid7 Logentries.

我可以在用docker run命令创建container时,
或是docker-compose启动时,指定要使用的logging driver.
举例,我的Synolog Nas上的dokcer,莫明跑了一个奇怪的logging driver叫db。(下图)


我想让我的docker-compose启动时,运行json-file。
就可以补上
loggin:
  driver: json-file

 

Tags: docker

Devin Yang

文章内容无法一一说明,如果您有什么不了解处,欢印提问哦:)

No Comment

Post your comment

需要登入才可留言!

类似文章


dlaravel,docker

D-Laravel学习三阶段

闲聊D-Laravel的使用的三阶段,为何使用D-Laravel。 因为D-Laravel使用的设置档都相当的简单,极适何Docker的初学者学习, 并且就自不懂Docker运用的使用者,也可以借住./console及./create两个命令创建项目。

docker

D-Laravel上.env及docker-compsoe小教室

本文介绍,当我们使用D-Laravel的.env加载多个yml档时,为何docker-compose ps官方命令无法列出所有使用中的服务。 但在D-Laravel上的./console ps确能正常显示,那官方的docker-compose命令因如何使用才能有相同的效果呢?

docker

Docker防毒攻略

最近刚看玩延禧攻略,就想来介绍个MacOS扫毒攻略。 这篇文章,教大家用如何用Docker搞定MacOS扫毒。 简单介绍,我们如何透过docker使用防毒软体扫毒。 这里假定目前我的目录是在我的家目录中,所以${PWD}就是目前的所在目录,会被挂载到container内的scan数据夹。 所以,使用clamscan -r /scan/,时就能扫描所有的挡案罗,加上-r的参数会使用递归的方式一层一层的进入子目录扫描。