這篇文章將為大家詳細(xì)講解有關(guān)如何使用shell腳本對(duì)Nginx日志進(jìn)行切分,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
創(chuàng)新互聯(lián)建站專業(yè)為企業(yè)提供惠州網(wǎng)站建設(shè)、惠州做網(wǎng)站、惠州網(wǎng)站設(shè)計(jì)、惠州網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、惠州企業(yè)網(wǎng)站模板建站服務(wù),十載惠州做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。具體如下:
1.日志格式
默認(rèn)的日志格式: main
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' $status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"';
如默認(rèn)的main日志格式,記錄這么幾項(xiàng)
遠(yuǎn)程IP- 遠(yuǎn)程用戶/用戶時(shí)間 請(qǐng)求方法(如GET/POST) 請(qǐng)求體body長(zhǎng)度 referer來(lái)源信息
http-user-agent用戶代理/蜘蛛 ,被轉(zhuǎn)發(fā)的請(qǐng)求的原始IP
http_x_forwarded_for:在經(jīng)過(guò)代理時(shí),代理把你的本來(lái)IP加在此頭信息中,傳輸你的原始IP
2.實(shí)現(xiàn)思路
shell+定時(shí)任務(wù)+nginx信號(hào)管理,完成日志按日期存儲(chǔ)
#!/bin/bash base_path='/usr/local/nginx/logs' log_path=$(date -d yesterday +"%Y%m") day=$(date -d yesterday +"%d") mkdir -p $base_path/$log_path mv $base_path/access.log $base_path/$log_path/access_$day.log kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
3.定時(shí)任務(wù)
Crontab 編輯定時(shí)任務(wù)
01 00 * * * /xxx/path/b.sh 每天0時(shí)1分(建議在02-04點(diǎn)之間,系統(tǒng)負(fù)載小)、
關(guān)于“如何使用shell腳本對(duì)Nginx日志進(jìn)行切分”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。