nignx日志定时清理、Windows 清理nignx日志、linux 清理nignx日志

2024-01-30 10:28

本文主要是介绍nignx日志定时清理、Windows 清理nignx日志、linux 清理nignx日志,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

因为项目日志老占磁盘空间,记录一下优化配置文件:

针对linux清理:

1.创建一个名为 cleanup_nginx_logs.sh 的脚本文件

nano cleanup_nginx_logs.sh

2.在打开的文本编辑器中,将以下内容复制并粘贴到文件中:

#!/bin/bash# 设置要清理的日志目录和文件名
LOG_DIR="/var/log/nginx"
LOG_FILES=("access.log" "error.log")# 清理日志文件
for file in "${LOG_FILES[@]}"
dofind "$LOG_DIR" -name "$file" -type f -mtime +30 -exec rm {} \;touch "$LOG_DIR/$file"
done

3.保存文件并退出编辑器

4.输入以下命令修改脚本文件的权限,使其可执行:

chmod +x cleanup_nginx_logs.sh

5.使用 cron 来定期运行该脚本。输入以下命令打开 crontab 编辑器:

crontab -e

6.在打开的文本编辑器中,添加以下一行到文件末尾,表示每天凌晨 1 点清理 NGINX 日志并保留30天内的日志:

0 1 * * * /path/to/cleanup_nginx_logs.sh

7.保存文件并退出编辑器,坐等第二天查看就可以了

针对Windows清理:创建一个.bat文件,复制下面内容,更换NGINX安装目录即可,参数随自己需求调整

@echo off
rem 取1天之前的日期
echo wscript.echo dateadd("d",-1,date) >%tmp%\tmp.vbs
for /f "tokens=1,2,3* delims=/" %%i in ('cscript /nologo %tmp%\tmp.vbs') do set y=%%i
for /f "tokens=1,2,3* delims=/" %%i in ('cscript /nologo %tmp%\tmp.vbs') do set m=%%j
for /f "tokens=1,2,3* delims=/" %%i in ('cscript /nologo %tmp%\tmp.vbs') do set d=%%k
if %m% LSS 9 set m=0%m%
if %d% LSS 9 set d=0%d%
echo %y%-%m%-%d%rem 查询Nginx进程
tasklist /fi "imagename eq nginx.exe"rem 设置NGINX安装盘符 
set NGINX_DRIVER=D:rem 设置NGINX安装路径
set NGINX_PATH="%NGINX_DRIVER%\wanmagroup\ide\nginx-1.20.2"rem 设置NGINX日志目录
set LOG_PATH=%NGINX_PATH%\logsrem 设置保留日志天数
set save_days=10rem 进入NGINX盘符
%NGINX_DRIVER%rem 进入日志路径
cd %LOG_PATH%rem 移动日志文件
move %LOG_PATH%\host.access.log %LOG_PATH%\host.access_%y%-%m%-%d%.log
move %LOG_PATH%\error.log %LOG_PATH%\error_%y%-%m%-%d%.logrem 进入NGINX安装路径
cd %NGINX_PATH%rem 重新打开Nginx
nginx -s reopenrem 删除30天之前的文件 "%LOG_PATH%" 
forfiles /p "%LOG_PATH%" /s /m *%y%-%m%-%d%.log /d -%save_days% /c "cmd /c del @path"
echo on

创建完成双击运行即可

如果文章帮助了你解决问题,帮点赞一下,谢谢阅读!

这篇关于nignx日志定时清理、Windows 清理nignx日志、linux 清理nignx日志的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/659943

相关文章

防止Linux rm命令误操作的多场景防护方案与实践

《防止Linuxrm命令误操作的多场景防护方案与实践》在Linux系统中,rm命令是删除文件和目录的高效工具,但一旦误操作,如执行rm-rf/或rm-rf/*,极易导致系统数据灾难,本文针对不同场景... 目录引言理解 rm 命令及误操作风险rm 命令基础常见误操作案例防护方案使用 rm编程 别名及安全删除

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

SpringBoot日志级别与日志分组详解

《SpringBoot日志级别与日志分组详解》文章介绍了日志级别(ALL至OFF)及其作用,说明SpringBoot默认日志级别为INFO,可通过application.properties调整全局或... 目录日志级别1、级别内容2、调整日志级别调整默认日志级别调整指定类的日志级别项目开发过程中,利用日志

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

深度剖析SpringBoot日志性能提升的原因与解决

《深度剖析SpringBoot日志性能提升的原因与解决》日志记录本该是辅助工具,却为何成了性能瓶颈,SpringBoot如何用代码彻底破解日志导致的高延迟问题,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言第一章:日志性能陷阱的底层原理1.1 日志级别的“双刃剑”效应1.2 同步日志的“吞吐量杀手”

Linux实现查看某一端口是否开放

《Linux实现查看某一端口是否开放》文章介绍了三种检查端口6379是否开放的方法:通过lsof查看进程占用,用netstat区分TCP/UDP监听状态,以及用telnet测试远程连接可达性... 目录1、使用lsof 命令来查看端口是否开放2、使用netstat 命令来查看端口是否开放3、使用telnet

Linux系统管理与进程任务管理方式

《Linux系统管理与进程任务管理方式》本文系统讲解Linux管理核心技能,涵盖引导流程、服务控制(Systemd与GRUB2)、进程管理(前台/后台运行、工具使用)、计划任务(at/cron)及常用... 目录引言一、linux系统引导过程与服务控制1.1 系统引导的五个关键阶段1.2 GRUB2的进化优

Python Flask实现定时任务的不同方法详解

《PythonFlask实现定时任务的不同方法详解》在Flask中实现定时任务,最常用的方法是使用APScheduler库,本文将提供一个完整的解决方案,有需要的小伙伴可以跟随小编一起学习一下... 目录完js整实现方案代码解释1. 依赖安装2. 核心组件3. 任务类型4. 任务管理5. 持久化存储生产环境