自定义日志驱动程序输出


taglog 选项指定如何设置标识 容器的日志消息。默认情况下,系统使用 容器 ID。要覆盖此行为,请指定tag选择:

$ docker run --log-driver=fluentd --log-opt fluentd-address=myhost.local:24224 --log-opt tag="mailer"

Docker 支持一些特殊的模板标记,你可以在指定标签的值时使用:

标记描述
{{.ID}}容器 ID 的前 12 个字符。
{{.FullID}}完整的容器 ID。
{{.Name}}容器名称。
{{.ImageID}}容器镜像 ID 的前 12 个字符。
{{.ImageFullID}}容器的完整镜像 ID。
{{.ImageName}}容器使用的镜像的名称。
{{.DaemonName}}Docker 程序的名称 (docker).

例如,指定--log-opt tag="{{.ImageName}}/{{.Name}}/{{.ID}}"价值产生syslog日志行,例如:

Aug  7 18:33:19 HOSTNAME hello-world/foobar/5790672ab6a0[9103]: Hello from Docker.

在启动时,系统会设置container_namefield 和{{.Name}}在 标签。如果您使用docker rename要重命名容器,新名称不是 反映在日志消息中。相反,这些消息继续使用 原始容器名称。