Google Cloud 日志驱动程序
Google Cloud 日志驱动程序将容器日志发送到 Google Cloud 日志 日志。
用法
要使用 gcplogs
驱动程序作为默认日志驱动程序,请在 daemon.json
文件中将 log-driver
和 log-opt
键设置为相应的值。该文件位于 Linux 主机上的 /etc/docker/
或 Windows Server 上的 C:\ProgramData\docker\config\daemon.json
中。有关使用 daemon.json
配置 Docker 的更多信息,请参阅 daemon.json。
以下示例将日志驱动程序设置为 gcplogs
并设置 gcp-meta-name
选项。
{
"log-driver": "gcplogs",
"log-opts": {
"gcp-meta-name": "example-instance-12345"
}
}
重新启动 Docker 以使更改生效。
您可以使用 --log-driver
选项为 docker run
指定特定容器的日志驱动程序
$ docker run --log-driver=gcplogs ...
如果 Docker 检测到它在 Google Cloud 项目中运行,它会从 实例元数据服务 中发现配置。否则,用户必须使用 --gcp-project
日志选项指定要记录到的项目,Docker 会尝试从 Google 应用程序默认凭据 中获取凭据。--gcp-project
标志优先于从元数据服务器发现的信息,因此在 Google Cloud 项目中运行的 Docker 守护程序可以使用 --gcp-project
覆盖到其他项目进行日志记录。
Docker 从 Google Cloud 元数据服务器获取区域、实例名称和实例 ID 的值。如果元数据服务器不可用,则可以通过选项提供这些值。它们不会覆盖来自元数据服务器的值。
gcplogs 选项
您可以使用 --log-opt NAME=VALUE
标志来指定这些额外的 Google Cloud 日志驱动程序选项
选项 | 必需 | 描述 |
---|---|---|
gcp-project | 可选 | 要记录到的 Google Cloud 项目。默认为从 Google Cloud 元数据服务器中发现该值。 |
gcp-log-cmd | 可选 | 是否记录容器启动的命令。默认为 false。 |
labels | 可选 | 标签键的逗号分隔列表,如果为容器指定了这些标签,则应将其包含在消息中。 |
labels-regex | 可选 | 类似于并兼容 labels 。一个匹配与日志相关的标签的正则表达式。用于高级 日志标签选项。 |
env | 可选 | 环境变量键的逗号分隔列表,如果为容器指定了这些变量,则应将其包含在消息中。 |
env-regex | 可选 | 类似于并兼容 env 。一个匹配与日志相关的环境变量的正则表达式。用于高级 日志标签选项。 |
gcp-meta-zone | 可选 | 实例的区域名称。 |
gcp-meta-name | 可选 | 实例名称。 |
gcp-meta-id | 可选 | 实例 ID。 |
如果 label
和 env
键之间存在冲突,则 env
的值优先。这两个选项都会在日志消息的属性中添加其他字段。
以下是如何记录到默认日志目标的日志选项的示例,该目标通过查询 Google Cloud 元数据服务器来发现。
$ docker run \
--log-driver=gcplogs \
--log-opt labels=location \
--log-opt env=TEST \
--log-opt gcp-log-cmd=true \
--env "TEST=false" \
--label location=west \
your/application
此配置还指示驱动程序在有效负载中包含标签 location
、环境变量 ENV
以及用于启动容器的命令。
以下示例显示了在 Google Cloud 之外运行的日志选项。GOOGLE_APPLICATION_CREDENTIALS
环境变量必须为守护程序设置,例如通过 systemd
[Service]
Environment="GOOGLE_APPLICATION_CREDENTIALS=uQWVCPkMTI34bpssr1HI"
$ docker run \
--log-driver=gcplogs \
--log-opt gcp-project=test-project \
--log-opt gcp-meta-zone=west1 \
--log-opt gcp-meta-name=`hostname` \
your/application