一、问题背景
nginx在安装时没有配置在自动切割,文件很大,需要查找指定日期的log文件。
二、手工截取
截取2023-10-18日的日志:
sed -n '/18/Oct/2023/,/19/Oct/2023/p' access.log >20231018.log
或者:
cat access.log_ |egrep "12/Dec/2019" |sed -n '/14:40:00/,/15:36:00/p' >201912.log
二、手工切割每天的日志脚本【加入crontab任务】
set -e
sleep 1
yesterday=$(date -d 'yesterday' +%Y-%m-%d)
ng_logs_dir='/home/Yinling/nginx/logs'
if [ -d $ng_logs_dir ];then
cd $ng_logs_dir
mv access.log access_${yesterday}.log
kill -USR1 $(cat /home/Yinling/nginx/logs/nginx.pid)
sleep 1
tar -czf access_${yesterday}.log.tar.gz access_${yesterday}.log
rm -f access_${yesterday}.log
else
echo "nginx日志目录不存在"
exit 0
fi
[root@VM-0-8-centos logs]# ls -alh
total 363M
drwxr-xr-x 2 root root 4.0K Sep 25 08:55 .
drwxr-xr-x 11 root root 4.0K Oct 9 2020 ..
-rw-r--r-- 1 root root 362M Oct 20 10:43 access.log
-rw-r--r-- 1 root root 449K Oct 18 13:34 error.log
-rw-r--r-- 1 root root 6 Sep 25 08:55 nginx.pid
[root@VM-0-8-centos logs]# tail -f access.log
1.80.216.250 - - [20/Oct/2023:10:43:40 +0800] "GET /yinling/admin/enum/query?parentId=1002 HTTP/1.1" 200 207 "http://localhost:8090/orgmag/organization" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36"
1.80.216.250 - - [20/Oct/2023:10:43:41 +0800] "GET /yinling/admin/sysOrg/queryTree HTTP/1.1" 200 4299 "http://localhost:8090/orgmag/organization" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36"
1.80.216.250 - - [20/Oct/2023:10:43:41 +0800] "GET /yinling/admin/enum/query?parentId=1004 HTTP/1.1" 200 207 "http://localhost:8090/orgmag/organization" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36"
1.80.216.250 - - [20/Oct/2023:10:43:41 +0800] "POST /yinling/admin/partyMember/query HTTP/1.1" 200 6615 "http://localhost:8090/orgmag/organization" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36"
1.80.216.250 - - [20/Oct/2023:10:43:54 +0800] "POST /yinling/admin/trainEdu/startWatch/3dc5668ad2854a9b919a99409cbaf749 HTTP/1.1" 200 289 "http://localhost:8081/" "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"
1.80.216.250 - - [20/Oct/2023:10:43:54 +0800] "GET /yinling/admin/trainEdu/findById/3dc5668ad2854a9b919a99409cbaf749 HTTP/1.1" 200 755 "http://localhost:8081/" "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"
1.80.216.250 - - [20/Oct/2023:10:45:34 +0800] "GET /yinling/admin/trainEdu/findById/3dc5668ad2854a9b919a99409cbaf749 HTTP/1.1" 200 755 "http://localhost:8081/" "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"
1.80.216.250 - - [20/Oct/2023:10:45:34 +0800] "POST /yinling/admin/trainEdu/startWatch/3dc5668ad2854a9b919a99409cbaf749 HTTP/1.1" 200 289 "http://localhost:8081/" "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"
1.80.216.250 - - [20/Oct/2023:10:45:58 +0800] "GET /yinling/admin/trainEdu/findById/3dc5668ad2854a9b919a99409cbaf749 HTTP/1.1" 200 755 "http://localhost:8081/" "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"
1.80.216.250 - - [20/Oct/2023:10:45:58 +0800] "POST /yinling/admin/trainEdu/startWatch/3dc5668ad2854a9b919a99409cbaf749 HTTP/1.1" 200 287 "http://localhost:8081/" "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"