标签:
一、为什么对日志进行支解。1.nginx日志默认情况下统统写入到一个文件中,文件会变的越来越大.
2.单个的日志文件非常未便利检察分析。
二、简析日志支解。
岂论是windows还是linux,对日志的支解都是一条思路。即:
1.对现有日志文件进行重定名。
2.生成新的日志文件。
3.定制脚本,按时执行.
三、日志支解实操。
windows系统:
1.logcut.bat
#界说时间(年月日)
for /f "tokens=1 delims=http://www.mamicode.com/ " %%j in ("%date%") do set d1=%%j
for /f "tokens=2 delims=http://www.mamicode.com/ " %%j in ("%date%") do set d2=%%j
for /f "tokens=3 delims=http://www.mamicode.com/ " %%j in ("%date%") do set d3=%%j
#创建目录便于检察
set backupdir=C:\nginx\logs\%d1%\%d2%\%d3%
mkdir %backupdir%
#移动原有日志,相当于重定名
move F:\nginx\access.log %backupdir%
#重开日志,,生成新的日志文件
F:\nginx\nginx.exe -s reopen
2.通过windows的打算任务来实现按时支解日志(本人使用的windows2012 r2)
linux系统:
1.logcut.sh
#!/bin/sh
#界说日志格局
Dateformat=`date +%Y%m%d`
#定义日志目录
Basedir="/application/nginx"
Nginxlogdir="$Basedir/logs"
#界说支解的日志
Logname="access"
#判断是否存在日志文件
[ -d $Nginxlogdir ] && cd $Nginxlogdir||exit 1
[ -f ${Logname}.log ]||exit 1
#对原有的日志文件进行改削
/bin/mv $Logname.log ${Dateformat}_$Logname.log
#从头生成nginx日志
$Basedir/sbin/nginx -s reload
2.按时任务,实现成果。
crontab -l
#logs cut
00 00 * * * sh /server/scripts/logcut.sh &>/dev/null
nginx日志支解:windows和linux