国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > Nginx > 正文

Nginx定時切割日志實現詳解

2024-08-30 12:24:22
字體:
來源:轉載
供稿:網友

前言

Nginx日志默認情況下寫入到一個文件中,為了區分各個域下的日志,我們一般會分開存儲。即時這樣,文件也會變的越來越大,非常不方便查看分析。通常我們是以每日來做統計的,下面來聊聊以日期來分隔Nginx日志。

配置

編寫腳本

#!/bin/bash#初始化LOGS_PATH=/usr/local/nginx/logsYESTERDAY=$(date -d "yesterday" +%Y%m%d)#按天切割日志mv ${LOGS_PATH}/bbs.52itstyle.com.access.log ${LOGS_PATH}/bbs.52itstyle.com.access_${YESTERDAY}.logmv ${LOGS_PATH}/blog.52itstyle.com.access.log  ${LOGS_PATH}/blog.52itstyle.com.access_${YESTERDAY}.log#向nginx主進程發送USR1信號,重新打開日志文件,否則會繼續往mv后的文件寫數據的。原因在于:linux系統中,內核是根據文件描述符來找文件的。如果不這樣操作導致日志切割失敗。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 -fexit 0

寫入任務

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

crontab

crond是linux下用來周期性的執行某種任務或等待處理某些事件的一個守護進程,與windows下的計劃任務類似,當安裝完成操作系統后,默認會安裝此服務工具,并且會自動啟動crond進程,crond進程每分鐘會定期檢查是否有要執行的任務,如果有要執行的任務,則自動執行該任務。Linux下的任務調度分為兩類,系統任務調度和用戶任務調度。

系統任務調度:系統周期性所要執行的工作,比如寫緩存數據到硬盤、日志清理等。在/etc目錄下有一個crontab文件,這個就是系統任務調度的配置文件。

crontab服務安裝

安裝crontab:

yum install crontabs

服務操作說明:

service crond start //啟動服務service crond stop //關閉服務service crond restart //重啟服務service crond reload //重新載入配置

查看crontab服務狀態:

service crond status

手動啟動crontab服務:

service crond start

查看crontab服務是否已設置為開機啟動,執行命令:

ntsysv

加入開機自動啟動:

chkconfig –level 35 crond on

crontab格式說明

用戶所建立的crontab文件中,每一行都代表一項任務,每行的每個字段代表一項設置,它的格式共分為六個字段,前五段是時間設定段,第六段是要執行的命令段,格式如下:

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 象山县| 池州市| 珲春市| 政和县| 钟祥市| 农安县| 墨玉县| 新巴尔虎右旗| 界首市| 南召县| 疏勒县| 阿拉善左旗| 吐鲁番市| 石阡县| 林周县| 乐平市| 理塘县| 乐至县| 九江县| 紫阳县| 揭西县| 龙江县| 青州市| 望谟县| 台东市| 大丰市| 遂平县| 来凤县| 永州市| 涪陵区| 漳州市| 杭锦后旗| 东台市| 贺兰县| 临武县| 中宁县| 堆龙德庆县| 越西县| 黄梅县| 东台市| 孟津县|