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日志配置 对日志进行拆分目录和文件的主要内容,如果未能解决你的问题,请参考以下文章

Docker容器日志管理实践

docker容器内部日志本地怎么查看

Docker-如何使用 syslog 在主机上记录日志?

如何从发送到 Logstash 的 syslog 日志中检索标签?

对docker容器产生的日志做轮转

docker log driver