云计算核心技术Docker教程:Docker使用syslog日志驱动程序

2022-10-31

syslog日志驱动程序将日志路由到syslog服务器。该syslog协议使用原始字符串作为日志消息并支持有限的元数据集。系统日志消息必须以特定方式格式化才能有效。从有效消息中,接收方可以提取以下信息:

优先级:日志级别,例如debug、warning、error、info。

时间戳:事件发生的时间。

主机名:事件发生的地方。

设施:哪个子系统记录了消息,例如mail或kernel。

进程名称和进程 ID (PID):生成日志的进程的名称和 ID。

该格式在RFC 5424 中定义,Docker 的 syslog 驱动程序通过以下方式实现 ABNF 引用:

用法

要将syslog驱动程序用作默认日志记录驱动程序,请将log-driver 和log-opt键设置为daemon.json文件中的适当值,该文件位于/etc/docker/Linux 主机或 C:\ProgramData\docker\config\daemon.jsonWindows 服务器上。有关使用 配置 Docker 的更多信息daemon.json,请参阅 daemon.json。

以下示例将日志驱动程序syslog设置为并设置 syslog-address选项。该syslog-address选项支持UDP和TCP; 此示例使用 UDP。

{

“log-driver”: “syslog”,

“log-opts”: {

“syslog-address”: “udp://1.2.3.4:1111”

}

}

重新启动 Docker 以使更改生效。

提示

log-opts配置daemon.json文件中的配置选项必须以字符串形式提供。因此,数字和布尔值(例如 的值 syslog-tls-skip-verify)必须用引号 ( “)括起来。

您可以通过设置特定容器记录 –log-driver标志docker container create或docker run:

docker run \

–log-driver syslog –log-opt syslog-address=udp://1.2.3.4:1111 \

alpine echo hello world

您好!请登录

点击取消回复