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

相关文章

使用Python构建一个高效的日志处理系统

《使用Python构建一个高效的日志处理系统》这篇文章主要为大家详细讲解了如何使用Python开发一个专业的日志分析工具,能够自动化处理、分析和可视化各类日志文件,大幅提升运维效率,需要的可以了解下... 目录环境准备工具功能概述完整代码实现代码深度解析1. 类设计与初始化2. 日志解析核心逻辑3. 文件处

Windows环境下解决Matplotlib中文字体显示问题的详细教程

《Windows环境下解决Matplotlib中文字体显示问题的详细教程》本文详细介绍了在Windows下解决Matplotlib中文显示问题的方法,包括安装字体、更新缓存、配置文件设置及编码調整,并... 目录引言问题分析解决方案详解1. 检查系统已安装字体2. 手动添加中文字体(以SimHei为例)步骤

Linux进程CPU绑定优化与实践过程

《Linux进程CPU绑定优化与实践过程》Linux支持进程绑定至特定CPU核心,通过sched_setaffinity系统调用和taskset工具实现,优化缓存效率与上下文切换,提升多核计算性能,适... 目录1. 多核处理器及并行计算概念1.1 多核处理器架构概述1.2 并行计算的含义及重要性1.3 并

Linux线程之线程的创建、属性、回收、退出、取消方式

《Linux线程之线程的创建、属性、回收、退出、取消方式》文章总结了线程管理核心知识:线程号唯一、创建方式、属性设置(如分离状态与栈大小)、回收机制(join/detach)、退出方法(返回/pthr... 目录1. 线程号2. 线程的创建3. 线程属性4. 线程的回收5. 线程的退出6. 线程的取消7.

Linux下进程的CPU配置与线程绑定过程

《Linux下进程的CPU配置与线程绑定过程》本文介绍Linux系统中基于进程和线程的CPU配置方法,通过taskset命令和pthread库调整亲和力,将进程/线程绑定到特定CPU核心以优化资源分配... 目录1 基于进程的CPU配置1.1 对CPU亲和力的配置1.2 绑定进程到指定CPU核上运行2 基于

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Linux下删除乱码文件和目录的实现方式

《Linux下删除乱码文件和目录的实现方式》:本文主要介绍Linux下删除乱码文件和目录的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux下删除乱码文件和目录方法1方法2总结Linux下删除乱码文件和目录方法1使用ls -i命令找到文件或目录

Linux在线解压jar包的实现方式

《Linux在线解压jar包的实现方式》:本文主要介绍Linux在线解压jar包的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux在线解压jar包解压 jar包的步骤总结Linux在线解压jar包在 Centos 中解压 jar 包可以使用 u

linux解压缩 xxx.jar文件进行内部操作过程

《linux解压缩xxx.jar文件进行内部操作过程》:本文主要介绍linux解压缩xxx.jar文件进行内部操作,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、解压文件二、压缩文件总结一、解压文件1、把 xxx.jar 文件放在服务器上,并进入当前目录#

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon