Log4j Docker 支持
Log4j 通过提供查找以检索容器信息来支持 Docker。
Accessing Docker
Log4j Docker 支持需要访问 Docker REST 接口。实际上,这意味着应用程序需要通过卷挂载(不推荐)访问unix:///var/run/docker.sock,将 Docker 绑定到另一个主机/端口或 unix 套接字。或使用代理应用程序提供访问权限。 Log4j Spring Cloud 示例应用程序使用 socat 代理访问 Docker。
Lookup Attributes
Log4j Docker 提供对以下容器属性的访问:
-
containerId-分配给容器的完整 ID。
-
containerName-分配给容器的名称。
-
imageId-分配给图像的 ID。
-
imageName-分配给图像的名称。
-
shortContainerId-容器 ID 的前 12 个字符。
-
shortImageId-图像 ID 的前 12 个字符。
可以通过添加属性来访问属性
${docker:containerId}
配置。请注意,docker 变量在记录初始化期间仅解析一次,因此不应使用多个“ $”字符来引用它们。
Requirements
Log4j Docker 需要 Log4j Core,Log4j API 和最少的 Java8.有关更多信息,请参阅Runtime Dependencies。