每天定时切割Nginx日志的脚本分享

在服务器运维过程中,我们经常需要对Nginx日志进行切割,以便于管理和分析,手动切割日志虽然可行,但效率低下,容易出错,我们需要一个自动化的脚本来帮助我们定时切割Nginx日志,本文将分享一个实用的脚本,帮助你轻松实现Nginx日志的定时切割。

准备工作

1、确保你的服务器已经安装了Nginx和Logrotate工具,如果没有安装,可以使用以下命令进行安装:

每天定时切割Nginx日志的脚本分享

对于Ubuntu/Debian系统:

```

sudo apt-get update

sudo apt-get install nginx logrotate

```

对于CentOS/RHEL系统:

```

sudo yum install epel-release

sudo yum install nginx logrotate

```

2、创建一个用于存放Nginx日志的目录,/var/log/nginx

3、为Nginx主进程创建一个配置文件,/etc/nginx/nginx.conf,在这个文件中,设置日志文件的路径和格式,

每天定时切割Nginx日志的脚本分享

```

access_log /var/log/nginx/access.log;

error_log /var/log/nginx/error.log;

```

编写脚本

接下来,我们将编写一个脚本来实现Nginx日志的定时切割,创建一个名为nginx_logrotate.sh的文件,然后将以下内容复制到文件中:

!/bin/bash
定义日志文件路径和切割周期(单位:天)
LOG_PATH="/var/log/nginx"
DAYS=7
获取当前日期和时间
DATE=$(date +%Y%m%d)
TIME=$(date +%H%M)
创建新的日志文件名
ACCESS_LOG="${LOG_PATH}/access_${DATE}.log"
ERROR_LOG="${LOG_PATH}/error_${DATE}.log"
切割日志文件并重载Nginx配置
mv ${LOG_PATH}/access.log ${ACCESS_LOG} || true
mv ${LOG_PATH}/error.log ${ERROR_LOG} || true
kill -USR1 $(cat /var/run/nginx.pid) || true

设置脚本权限和定时任务

1、为脚本添加可执行权限:

```

chmod +x /path/to/nginx_logrotate.sh

```

2、使用crontab命令设置定时任务,打开当前用户的定时任务列表:

```

crontab -e

每天定时切割Nginx日志的脚本分享

```

3、在打开的编辑器中,添加以下内容以每天凌晨0点执行脚本:

```

0 0 * * * /path/to/nginx_logrotate.sh > /dev/null 2>&1

```

4、保存并退出编辑器,现在,脚本将每天自动执行,帮助你定时切割Nginx日志。

问题与解答

1、Q: 如果我想自定义日志切割周期,应该如何修改脚本?

A: 只需修改脚本中的DAYS变量值即可,如果你想将切割周期设置为30天,可以将DAYS=7改为DAYS=30,确保crontab中的定时任务也相应地进行了修改。

2、Q: 如果我想在切割日志时保留最近几天的日志文件,应该如何操作?

A: 你可以通过修改脚本中的DAYS变量值来实现,如果你想保留最近7天的日志文件,可以将DAYS=7改为DAYS=14,这样,脚本将只保留最近14天的日志文件,超过这个天数的日志文件将被删除,确保crontab中的定时任务也相应地进行了修改。

原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/169559.html

Like (0)
Donate 微信扫一扫 微信扫一扫
K-seoK-seo
Previous 2023-12-26 12:58
Next 2023-12-26 13:02

相关推荐

  • nginx流媒体服务器怎么搭建的

    搭建Nginx流媒体服务器的准备工作1、安装Nginx我们需要在Linux系统上安装Nginx,在终端中输入以下命令:sudo apt-get updatesudo apt-get install nginx2、配置Nginx安装完成后,我们需要对Nginx进行配置,编辑Nginx的配置文件,通常位于/etc/nginx/nginx.……

    2024-01-15
    0196
  • linux服务器日志文件在哪里

    Linux系统日志文件是记录系统运行状态、用户操作、软件事件等信息的文本文件,它们通常位于/var/log目录下,包含了大量关于系统和应用程序的详细信息,日志文件可以帮助管理员诊断系统问题、监控系统性能以及了解用户活动,常见的Linux系统日志文件有:/var/log/messages(系统消息日志)、/var/log/auth.log(认证日志)、/var/log/syslog(系统日志)和

    2023-12-15
    0172
  • nginx+tomcat 报错:『an upstream response is buffered to a temporary file 』

    这个报错可能是因为Nginx的缓存设置问题。你可以尝试调整Nginx的缓存设置,将proxy_buffering设置为off,并在location块中添加proxy_buffers和proxy_busy_buffers_size设置。,,``,location / {, proxy_pass http://tomcat;, proxy_buffering off;, proxy_buffers 8 16k;, proxy_busy_buffers_size 32k;,},``,,然后重启Nginx服务,看看问题是否解决。

    2024-05-07
    0110
  • 如何实现非Tomcat项目的负载均衡?

    非Tomcat项目负载均衡可以通过使用Nginx作为前端负载均衡器实现,通过反向代理分发请求至多台服务器。

    2025-01-16
    04
  • nginx如何启动

    Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器,它是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日,Nginx采用了事件驱动的异步非阻塞架构,使其在高并发、高负载的情况下表现出色。要启动Nginx,首先需要……

    2023-12-06
    0121
  • 云主机怎么弄

    云主机怎么架设私服随着互联网的普及,越来越多的企业和个人开始使用云主机来搭建自己的网站、应用等,而私服作为一种特殊类型的服务器,也受到了一部分用户的关注,如何在云主机上搭建私服呢?本文将为您详细介绍云主机架设私服的技术流程。选择合适的云主机我们需要选择合适的云主机,在选择云主机时,我们需要考虑以下几个方面:1、服务商信誉:选择一家有良……

    2024-01-25
    0193

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

免备案 高防CDN 无视CC/DDOS攻击 限时秒杀,10元即可体验  (专业解决各类攻击)>>点击进入