docker 容器 syslog日志配置 对日志进行拆分目录和文件
Posted donfy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker 容器 syslog日志配置 对日志进行拆分目录和文件相关的知识,希望对你有一定的参考价值。
syslog配置(centos系统,一般系统都有默认安装):
vi /etc/rsyslog.conf
去掉前面注释
日志配置:
vi /etc/rsyslog.d/docker.conf
(一般默认配置会加载/etc/rsyslog.d/目录下所有.conf配置文件,在/etc/rsyslog.d/docker.conf下可以找到路径)
# 定义日志模版
$template web,"/var/log/docker/%programname%/%timereported:0:10:date-rfc3339%.log"
# $name为设docker启动时设置的tag名称
if $programname == "$name" then
?web
# 终止其它文件输出日志
& ~
stop
容器启动:
docker run -i -d \\
--name $name \\
-v $worker_dir:/tmp \\
-w /tmp \\
-p 8080:8080 \\
--log-driver syslog \\
--log-opt syslog-address=tcp://127.0.0.1:514 \\
--log-opt tag=".Name" \\
openjdk:8-jdk-alpine \\
java -jar -Djava.security.egd=file:/dev/./urandom -Dspring.profiles.active=test $jar_name -Dexec.args="$name"
注: tag=".Name" .Name 引用当前容器name, $name 可自定义容器名称 参考: https://docs.docker.com/config/containers/logging/log_tags/
启动后 就能在/var/log/docker/ 目录下找到对应日志文件
docker其它日志驱动参考:https://docs.docker.com/config/containers/logging/configure/
以上是关于docker 容器 syslog日志配置 对日志进行拆分目录和文件的主要内容,如果未能解决你的问题,请参考以下文章