当前设置正在运行 Docker 容器fluentd
driver:
docker run --log-driver=fluentd my-container
这工作起来很容易...将标准输出发送到主机上本地运行的 Fluentd 系统。
我想控制流利tag
使用容器上设置的一些标签。对于此示例,假设一些标签 (docker inspect
片段):
"Config": {
"Labels": {
"com.amazonaws.ecs.container-name": "web",
"com.amazonaws.ecs.task-definition-version": "3"
}
}
我怎样才能设置fluentd
tag
通过提取一个或多个Labels
?
此 Docker 文档列出了当前支持的标签:https://docs.docker.com/engine/admin/logging/log_tags/ https://docs.docker.com/engine/admin/logging/log_tags/
这些文档记录了ExtraAttributes
...但是我可以弄清楚如何使用它来查找一个或多个标签。通读 Docker 代码,我不清楚:https://github.com/docker/docker/blob/master/daemon/logger/context.go#L29 https://github.com/docker/docker/blob/master/daemon/logger/context.go#L29
这是微不足道的docker inspect
:
docker inspect --format '{{index .ContainerLabels "com.amazonaws.ecs.container-name"}}'
我想找出相同的信息并将其放入log-opt tag=?