侧边栏壁纸
  • 累计撰写 3 篇文章
  • 累计创建 10 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Nginx日志切分方法(Docker容器)

96xm
2023-01-01 / 0 评论 / 1 点赞 / 172 阅读 / 0 字
温馨提示:
本文最后更新于2023-11-04,若内容或图片失效,请留言反馈。 部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

方法一、使用Logrotate工具进行切分

创建logrotate文件,文件名称可以自定义。

1、Nginx安装在宿主机:

vim /etc/logrotate.d/nginx

文件内容如下:

# 替换成自己的日志目录
/var/log/nginx/*.log {
    daily
    missingok
    rotate 52
    compress
    delaycompress
    notifempty
    create 640 root root
    sharedscripts
    postrotate
        if [ -f /var/run/nginx.pid ]; then
            kill -USR1 `cat /var/run/nginx.pid`
        fi
    endscript
}

使用以下命令进行测试:

# 检测
logrotate -df /etc/logrotate.d/nginx
# 手动执行
logrotate -f /etc/logrotate.d/nginx

2、Nginx安装在Docker容器:

vim /etc/logrotate.d/docker-nginx

文件内容如下:

# 替换成自己的日志目录
/opt/nginx/logs/*.log {
    daily
    missingok
    rotate 52
    compress
    delaycompress
    notifempty
    create 640 root root
    sharedscripts
    postrotate
        # 替换成自己使用的容器名称
        docker exec -it nginx bash -c '''
            if [ -f /var/run/nginx.pid ]; then
                kill -USR1 `cat /var/run/nginx.pid`
            fi
        '''
    endscript
}

使用以下命令进行测试:

# 检测
logrotate -df /etc/logrotate.d/docker-nginx
# 手动执行
logrotate -f /etc/logrotate.d/docker-nginx

1

评论区