新聞中心
對(duì)于一般的運(yùn)維和技術(shù)來說,每天不是查日志就是在查日志的路上。所以日志的管理規(guī)范以及大小,就會(huì)影響查看的效率。那該如何合理的管理日志文件的大小呢?下面為大家詳細(xì)講解一下nginx日志切割。

創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、臨邑網(wǎng)絡(luò)推廣、成都微信小程序、臨邑網(wǎng)絡(luò)營銷、臨邑企業(yè)策劃、臨邑品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供臨邑建站搭建服務(wù),24小時(shí)服務(wù)熱線:18982081108,官方網(wǎng)址:www.cdcxhl.com
logrotate配置
logrotate 的主配置文件在/etc/logrotate.conf 主配置文件無需進(jìn)行調(diào)整配置,保持默認(rèn)即可。
如果使用了一鍵安裝包配置的環(huán)境,可能在/etc/logrotate.d 下已經(jīng)生成了文件nginx ,如果沒有,則創(chuàng)建該文件:
vim /etc/logrotate.d/nginx
/data/weblogs/*.log {
weekly
rotate 7
missingok
dateext
nocompress
notifempty
sharedscripts
postrotate
[ -e /var/run/nginx.pid ] && kill -USR1 `cat /var/run/nginx.pid`
endscript
}
配置選項(xiàng)說明:
/data/weblogs/*.log # 需要切割的日志文件,可以指定為某個(gè)文件名進(jìn)行切割
weekly #指定轉(zhuǎn)儲(chǔ)周期為每周,對(duì)應(yīng)的 daily:指定轉(zhuǎn)儲(chǔ)周期為每天,monthly:指定轉(zhuǎn)儲(chǔ)周期為每月
rotate 7 #指定日志文件刪除之前轉(zhuǎn)儲(chǔ)的次數(shù),0 指沒有備份,7 指保留7 個(gè)備份
missingok #如果指定的目錄不存在,logrotate會(huì)報(bào)錯(cuò),此項(xiàng)用來關(guān)閉報(bào)錯(cuò)
nocompress # 這里是不進(jìn)行壓縮,如果需要將切割的日志進(jìn)行壓縮,可以設(shè)置為compress
notifempty #如果是空文件的話,不轉(zhuǎn)儲(chǔ)
sharedscripts #所有的日志文件都輪轉(zhuǎn)完畢后統(tǒng)一執(zhí)行一次腳本
postrotate/endscript #在轉(zhuǎn)儲(chǔ)以后需要執(zhí)行的命令可以放入這個(gè)對(duì),這兩個(gè)關(guān)鍵字必須單獨(dú)成行
postrotate 中的內(nèi)容即為:nginx進(jìn)程發(fā)送USR1信號(hào)使其重新打開日志并寫入,不會(huì)重啟服務(wù),也不會(huì)導(dǎo)致最新寫入的日志丟失
如果日志分類存放到不同的目錄下可以這樣設(shè)置:
/data/weblogs/*.log
/data/weblogs/cnyunwei/*.log
{
weekly
rotate 7
.....
測(cè)試是否正確執(zhí)行
[root@aliyun weblogs]#/usr/sbin/logrotate -f /etc/logrotate.d/nginx
執(zhí)行上述命令后可以查看當(dāng)前日志文件下生成了www.susecui.cn.log-20160808 的文件,如果是開啟了壓縮,則會(huì)生成www.susecui.cn.log-20160808.gz 的壓縮文件
創(chuàng)建任務(wù)計(jì)劃執(zhí)行命令
如果是設(shè)置了每天進(jìn)行切割日志,那么就需要單獨(dú)設(shè)置計(jì)劃任務(wù),默認(rèn)設(shè)置為一周切割的情況下不需要設(shè)置計(jì)劃任務(wù),logrotate 主配置文件中已經(jīng)定義了每周會(huì)進(jìn)行輪詢。
crontab -e
10 2 * * 6 /usr/sbin/logrotate -f /etc/logrotate.d/nginx
名稱欄目:詳解nginx日志切割
文章轉(zhuǎn)載:http://www.5511xx.com/article/cdcjhji.html


咨詢
建站咨詢
