首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

记录驱动程序的日志标记(引擎) | Log tags for logging driver (Engine)

tag选项指定如何格式化标识容器日志消息的标记。默认情况下,系统使用容器id的前12个字符。若要重写此行为,请指定tag备选方案:

代码语言:javascript
复制
$ docker run --log-driver=fluentd --log-opt fluentd-address=myhost.local:24224 --log-opt tag="mailer"

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

标记

描述

{{.ID}}

容器标识的前12个字符。

{{.FullID}}

完整的容器ID。

{{.Name}}

容器名称。

{{.ImageID}}

容器的图像ID的前12个字符。

{{}} .ImageFullID

容器的完整图像标识符。

{{}} .ImageName

容器使用的图像的名称。

{{.DaemonName}}

码头程序(docker)的名称。

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

代码语言:javascript
复制
Aug  7 18:33:19 HOSTNAME hello-world/foobar/5790672ab6a0[9103]: Hello from Docker.

启动时,系统将container_name字段和{{.Name}}在标签上。如果你用docker rename若要重命名容器,新名称不会反映在日志消息中。相反,这些消息继续使用原始容器名称。

对于高级用法,生成的标记的使用GO模板容器的日志上下文...

作为Syslog日志记录器可能实现的一个示例,如果您使用以下命令,您将得到如下输出:

代码语言:javascript
复制
$ docker run -it --rm \
    --log-driver syslog \
    --log-opt tag="{{ (.ExtraAttributes nil).SOME_ENV_VAR }}" \
    --log-opt env=SOME_ENV_VAR \
    -e SOME_ENV_VAR=logtester.1234 \
    flyinprogrammer/logtester
代码语言:javascript
复制
Apr  1 15:22:17 ip-10-27-39-73 logtester.1234[45499]: + exec app
Apr  1 15:22:17 ip-10-27-39-73 logtester.1234[45499]: 2016-04-01 15:22:17.075416751 +0000 UTC stderr msg: 1

扫码关注腾讯云开发者

领取腾讯云代金券