Docker 中的映像名称、容器名称 Docker 中的 Syslog 标记-Compose
Image Name, Container Name in Docker Syslog Tag in Docker-Compose
Docker 容器生成的日志,由 Docker Compose 使用 Syslog 驱动程序创建,使用以下格式 "docker/Container_ID"。
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: 1:C 03 May 00:53:21.313 # Warning: no config file specified, using the default config. In order to specify a config file
use redis-server /path/to/redis.conf
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: _._
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: _.-``__ ''-._
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: _.-`` `. `_. ''-._ Redis 3.0.7 (00000000/0) 64 bit
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: .-`` .-```. ```\/ _.,_ ''-._
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: ( ' , .-` | `, ) Running in standalone mode
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: |`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: | `-._ `._ / _.-' | PID: 1
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: `-._ `-._ `-./ _.-' _.-'
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: |`-._`-._ `-.__.-' _.-'_.-'|
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: | `-._`-._ _.-'_.-' | http://redis.io
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: `-._ `-._`-.__.-'_.-' _.-'
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: |`-._`-._ `-.__.-' _.-'_.-'|
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: | `-._`-._ _.-'_.-' |
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: `-._ `-._`-.__.-'_.-' _.-'
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: `-._ `-.__.-' _.-'
如果您将这些日志传送到 Splunk 等日志服务器,那就太糟糕了。
如何更改标签的名称?
- 图像名称,包括版本
- 基于服务名称的容器名称
- 容器 ID
应该是这样的:
May 2 17:53:21 pe2enpmas300 docker/redis/redisservice/addfbda94974[1359]:
如 https://docs.docker.com/engine/admin/logging/log_tags/ 所述,更改日志标签名称的方法可以使用此处定义的变量...因此,您可以使用以下内容:
log_driver: syslog
log_opt:
tag: "{{.ImageName}}/{{.Name}}/{{.ID}}"
/var/log/messages 上的输出如下(或者你的 syslog 输出日志到的任何地方)
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: 1:C 03 May 18:40:47.818 # Warning: no config file specified, using the default config. In order
to specify a config file use redis-server /path/to/redis.conf
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: _._
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: _.-``__ ''-._
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: _.-`` `. `_. ''-._ Redis 3.0.7 (00000000/0) 64 bit
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: .-`` .-```. ```\/ _.,_ ''-._
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: ( ' , .-` | `, ) Running in standalone mode
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: |`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: | `-._ `._ / _.-' | PID: 1
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: `-._ `-._ `-./ _.-' _.-'
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: |`-._`-._ `-.__.-' _.-'_.-'|
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: | `-._`-._ _.-'_.-' | http://redis.io
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: `-._ `-._`-.__.-'_.-' _.-'
另一个答案对于当前的 docker-compose
(1.24.1) 语法来说已经过时了。要设置必要的日志记录,您需要在 docker-compose.yaml
文件中为服务使用以下内容:
logging:
driver: syslog
options:
tag: "{{.ImageName}}/{{.Name}}/{{.ID}}"
Docker 容器生成的日志,由 Docker Compose 使用 Syslog 驱动程序创建,使用以下格式 "docker/Container_ID"。
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: 1:C 03 May 00:53:21.313 # Warning: no config file specified, using the default config. In order to specify a config file
use redis-server /path/to/redis.conf
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: _._
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: _.-``__ ''-._
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: _.-`` `. `_. ''-._ Redis 3.0.7 (00000000/0) 64 bit
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: .-`` .-```. ```\/ _.,_ ''-._
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: ( ' , .-` | `, ) Running in standalone mode
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: |`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: | `-._ `._ / _.-' | PID: 1
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: `-._ `-._ `-./ _.-' _.-'
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: |`-._`-._ `-.__.-' _.-'_.-'|
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: | `-._`-._ _.-'_.-' | http://redis.io
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: `-._ `-._`-.__.-'_.-' _.-'
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: |`-._`-._ `-.__.-' _.-'_.-'|
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: | `-._`-._ _.-'_.-' |
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: `-._ `-._`-.__.-'_.-' _.-'
May 2 17:53:21 pe2enpmas300 docker/addfbda94974[1359]: `-._ `-.__.-' _.-'
如果您将这些日志传送到 Splunk 等日志服务器,那就太糟糕了。
如何更改标签的名称?
- 图像名称,包括版本
- 基于服务名称的容器名称
- 容器 ID
应该是这样的:
May 2 17:53:21 pe2enpmas300 docker/redis/redisservice/addfbda94974[1359]:
如 https://docs.docker.com/engine/admin/logging/log_tags/ 所述,更改日志标签名称的方法可以使用此处定义的变量...因此,您可以使用以下内容:
log_driver: syslog
log_opt:
tag: "{{.ImageName}}/{{.Name}}/{{.ID}}"
/var/log/messages 上的输出如下(或者你的 syslog 输出日志到的任何地方)
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: 1:C 03 May 18:40:47.818 # Warning: no config file specified, using the default config. In order
to specify a config file use redis-server /path/to/redis.conf
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: _._
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: _.-``__ ''-._
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: _.-`` `. `_. ''-._ Redis 3.0.7 (00000000/0) 64 bit
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: .-`` .-```. ```\/ _.,_ ''-._
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: ( ' , .-` | `, ) Running in standalone mode
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: |`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: | `-._ `._ / _.-' | PID: 1
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: `-._ `-._ `-./ _.-' _.-'
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: |`-._`-._ `-.__.-' _.-'_.-'|
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: | `-._`-._ _.-'_.-' | http://redis.io
May 3 11:40:47 pe2enpmas300 docker/redis/npmoserver_redis_1/d14fd2ad2666[44739]: `-._ `-._`-.__.-'_.-' _.-'
另一个答案对于当前的 docker-compose
(1.24.1) 语法来说已经过时了。要设置必要的日志记录,您需要在 docker-compose.yaml
文件中为服务使用以下内容:
logging:
driver: syslog
options:
tag: "{{.ImageName}}/{{.Name}}/{{.ID}}"