7

我可以在 Docker 文档中看到: https ://docs.docker.com/config/containers/logging/gelf/

在 GELF 中,每条日志消息都是一个包含以下字段的字典: ...您自己配置的任何自定义字段

这是否意味着该驱动程序支持自定义字段?

我想为每条 GELF 消息添加自定义字段环境。我怎样才能做到这一点?

4

2 回答 2

1

文档确实对此不是很清楚,但正如这里所解释的,有一种方法可以在您的 GELF 消息中添加额外的字段,这对我有用:

您需要通过选项提供要添加的额外字段的名称--log-opt env=...,然后通过 docker env 提供字段值,如下所示:

docker run --log-driver gelf --log-opt env=mycustomfield --log-opt gelf-address=udp://<your-domain>:12201 --env mycustomfield=mycustomvalue alpine echo hello world

您生成的日志消息将包含额外字段"mycustomfield": "mycustomvalue"

于 2020-05-29T13:11:04.523 回答
0

您是否将 GELF 消息发送到 Docker 容器中的 Graylog?如果是这样,Graylog GELF 格式确实支持自定义字段。要提供自定义字段,只需在字段名称前添加下划线,如此处所示。只要您还提供了必填字段(请参阅下面的文档参考),那么消息将被成功解析。

附加 GELF 字段

有关更多信息,请参阅Graylog 文档中的 GELF 部分

于 2018-11-14T13:22:08.253 回答