自定义日志驱动程序输出
在tag
日志选项指定如何格式化标签标识容器的日志信息。默认情况下,系统使用容器ID的前12个字符。要覆盖此行为,请指定一个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 )。 |
例如,指定一个--log-opt tag="{{.ImageName}}/{{.Name}}/{{.ID}}"
值将产生如下syslog
日志行:
Aug 7 18:33:19 HOSTNAME hello-world/foobar/5790672ab6a0[9103]: Hello from Docker.
在启动时,系统会设置container_name
字段和{{.Name}}
标签。如果docker rename
用于重命名容器,则新名称不会反映在日志消息中。而是,这些消息继续使用原始容器名称。