一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

云服務(wù)器|WEB服務(wù)器|FTP服務(wù)器|郵件服務(wù)器|虛擬主機(jī)|服務(wù)器安全|DNS服務(wù)器|服務(wù)器知識(shí)|Nginx|IIS|Tomcat|

服務(wù)器之家 - 服務(wù)器技術(shù) - Nginx - Nginx定時(shí)切割日志實(shí)現(xiàn)詳解

Nginx定時(shí)切割日志實(shí)現(xiàn)詳解

2019-09-20 21:59小柒 Nginx

這篇文章主要介紹了Nginx定時(shí)切割日志詳解,Nginx日志默認(rèn)情況下寫入到一個(gè)文件中,為了區(qū)分各個(gè)域下的日志,我們一般會(huì)分開存儲(chǔ)。即時(shí)這樣,文件也會(huì)變的越來越大,非常不方便查看分析。下面來聊聊以日期來分隔Nginx日志,需

前言

Nginx日志默認(rèn)情況下寫入到一個(gè)文件中,為了區(qū)分各個(gè)域下的日志,我們一般會(huì)分開存儲(chǔ)。即時(shí)這樣,文件也會(huì)變的越來越大,非常不方便查看分析。通常我們是以每日來做統(tǒng)計(jì)的,下面來聊聊以日期來分隔Nginx日志。

配置

編寫腳本

#!/bin/bash
#初始化
LOGS_PATH=/usr/local/nginx/logs
YESTERDAY=$(date -d "yesterday" +%Y%m%d)

#按天切割日志
mv ${LOGS_PATH}/bbs.52itstyle.com.access.log ${LOGS_PATH}/bbs.52itstyle.com.access_${YESTERDAY}.log
mv ${LOGS_PATH}/blog.52itstyle.com.access.log  ${LOGS_PATH}/blog.52itstyle.com.access_${YESTERDAY}.log

#向nginx主進(jìn)程發(fā)送USR1信號(hào),重新打開日志文件,否則會(huì)繼續(xù)往mv后的文件寫數(shù)據(jù)的。原因在于:linux系統(tǒng)中,內(nèi)核是根據(jù)文件描述符來找文件的。如果不這樣操作導(dǎo)致日志切割失敗。
kill -USR1 `ps axu | grep "nginx: master process" | grep -v grep | awk '{print $2}'`

#刪除7天前的日志
cd ${LOGS_PATH}
find . -mtime +7 -name "*20[1-9][3-9]*" | xargs rm -f

exit 0

寫入任務(wù)

#執(zhí)行命令
crontab -e
#寫入文件并保存
0 0 * * * /home/scripts/cut_del_nginx_logs.sh

crontab

crond是linux下用來周期性的執(zhí)行某種任務(wù)或等待處理某些事件的一個(gè)守護(hù)進(jìn)程,與windows下的計(jì)劃任務(wù)類似,當(dāng)安裝完成操作系統(tǒng)后,默認(rèn)會(huì)安裝此服務(wù)工具,并且會(huì)自動(dòng)啟動(dòng)crond進(jìn)程,crond進(jìn)程每分鐘會(huì)定期檢查是否有要執(zhí)行的任務(wù),如果有要執(zhí)行的任務(wù),則自動(dòng)執(zhí)行該任務(wù)。Linux下的任務(wù)調(diào)度分為兩類,系統(tǒng)任務(wù)調(diào)度和用戶任務(wù)調(diào)度。

系統(tǒng)任務(wù)調(diào)度:系統(tǒng)周期性所要執(zhí)行的工作,比如寫緩存數(shù)據(jù)到硬盤、日志清理等。在/etc目錄下有一個(gè)crontab文件,這個(gè)就是系統(tǒng)任務(wù)調(diào)度的配置文件。

crontab服務(wù)安裝

安裝crontab:

yum install crontabs

服務(wù)操作說明:

service crond start //啟動(dòng)服務(wù)
service crond stop //關(guān)閉服務(wù)
service crond restart //重啟服務(wù)
service crond reload //重新載入配置

查看crontab服務(wù)狀態(tài):

service crond status

手動(dòng)啟動(dòng)crontab服務(wù):

service crond start

查看crontab服務(wù)是否已設(shè)置為開機(jī)啟動(dòng),執(zhí)行命令:

ntsysv

加入開機(jī)自動(dòng)啟動(dòng):

chkconfig –level 35 crond on

crontab格式說明

用戶所建立的crontab文件中,每一行都代表一項(xiàng)任務(wù),每行的每個(gè)字段代表一項(xiàng)設(shè)置,它的格式共分為六個(gè)字段,前五段是時(shí)間設(shè)定段,第六段是要執(zhí)行的命令段,格式如下:

Nginx定時(shí)切割日志實(shí)現(xiàn)詳解

在以上各個(gè)字段中,還可以使用以下特殊字符:

  • 星號(hào)(*):代表所有可能的值,例如day字段如果是星號(hào),則表示在滿足其它字段的制約條件后每天都執(zhí)行該命令操作。
  • 逗號(hào)(,):可以用逗號(hào)隔開的值指定一個(gè)列表范圍,例如,“1,2,5,7,8,9”
  • 中杠(-):可以用整數(shù)之間的中杠表示一個(gè)整數(shù)范圍,例如“2-6”表示“2,3,4,5,6”
  • 正斜線(/):可以用正斜線指定時(shí)間的間隔頻率,例如“0-23/2”表示每?jī)尚r(shí)執(zhí)行一次。同時(shí)正斜線可以和星號(hào)一起使用,例如*/10,如果用在minute字段,表示每十分鐘執(zhí)行一次。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 久久婷婷五月综合色丁香 | 九色PORNY丨视频入口 | 日韩欧美一区二区在线观看 | 狠狠色狠狠色综合系列 | 天使萌痴汉在线中文字幕 | 乌克兰18sex性hd | 99年水嫩漂亮粉嫩在线播放 | 99久9在线视频 | 日韩高清一区二区三区不卡 | 91亚洲视频在线观看 | 成人久久18免费网站 | 亚洲欧美日韩综合在线 | 久久久无码精品无码国产人妻丝瓜 | 日日爱669| 国产成人夜色影视视频 | 精品无码久久久久久久动漫 | 欧美日韩精品乱国产538 | 免费一级欧美片片线观看 | 国产91精品在线播放 | 俄罗斯妈妈k8影院在线观看 | 欧美美女一级片 | 国产成人永久免费视 | 欧美一级特黄特色大片免费 | 我的漂亮朋友在线观看全集免费 | 国产视频三区 | 国产在线三级 | 精品亚洲综合在线第一区 | 美女禁区视频无遮挡免费看 | 日本xx高清视频免费观看 | fquer老师 | 男人日女人的b | 国产精品热久久毛片 | 四虎精品成人免费影视 | 免费在线观看伦理片 | 啪啪免费入口网站 | 美女模特被c免费视频 | 99免费在线视频 | 欧美在线一级视频 | 亚洲免费小视频 | 国产精品网站在线观看 | 五月色天在线视频综合观看 |