91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

nginx 日志怎么定時切割

發布時間:2021-07-12 11:00:40 來源:億速云 閱讀:159 作者:chen 欄目:大數據

這篇文章主要講解了“nginx 日志怎么定時切割”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“nginx 日志怎么定時切割”吧!

最近有個需求,需要查看我們官網的日活,我是打算通過查看 nginx 日志,對每條日志進行切割,過濾出 ip,然后通過 set 集合去重,查看集合 set 的長度就是當天的日活了。我的 nginx 是通過 yum 安裝的,默認會對 nginx 日志進行切割,但是每天切割的時間不是當天的 00 點,這樣得到的日活數據可能不太準確。我就打算自定義 nginx 日志的切割。

nginx 日志怎么定時切割

所謂的"切割",并不是真的把一個文件"切成兩個",只是把原來的"access.log"文件重命名,比如重命名為今天的日期"2020-05-17.log",然后再創建一個名為"access.log"的新文件,以便新生成的日志仍然可以寫入到名為"access.log"的新文件中,這樣就能實現所謂的"日志滾動"或者"日志切割"的效果了。

但是,這樣做會遇到一些問題,我們來手動操作一下,首先,重命名文件


mv access.log 2020-05-17.log

我們已經重命名了"access.log"文件,但是你會發現,重命名后,nginx日志仍然會寫入到"2020-05-17.log"文件中,并不會自動創建一個新的"access.log"文件,即使你手動創建了一個新的"access.log"文件,nginx仍然會把日志寫入到重命名后的"2020-05-17.log"文件中。

出現上述情況,是因為nginx進程讀寫日志文件時,是通過文件描述符去操作的,雖然我們修改了原"access.log"文件的文件名,但是原文件描述符與文件本身的對應關系仍然存在,所以,單單對文件重命名是不夠的,我們需要讓nginx重新打開一個新文件,以便將新的日志寫入到新文件中。

通過yum源安裝nginx后,默認會安裝一個日志滾動的配置文件,這個配置文件就是 "/etc/logrotate.d/nginx" ,需要把這個文件刪除。默認的日志路徑是在 "/var/log/nginx/" ,我是在這個文件夾下寫了一個 shell 腳本, nginx_log_split.sh







D=$(date +%Y-%m-%d) # 獲取當天的日期# 移動文件mv -f /var/log/nginx/access.log /var/log/nginx/${D}.logsleep 0.5s# 重啟nginx/usr/sbin/nginx -s reload

使用 crontab 執行定時任務,crontab -e 后編輯一行


00 00 * * * /var/log/nginx/nginx_log_split.sh


感謝各位的閱讀,以上就是“nginx 日志怎么定時切割”的內容了,經過本文的學習后,相信大家對nginx 日志怎么定時切割這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

肇州县| 资阳市| 榆社县| 山东省| 吴桥县| 团风县| 东莞市| 綦江县| 东乌| 台北市| 天气| 太仆寺旗| 东台市| 巍山| 郴州市| 扬中市| 应用必备| 万宁市| 竹溪县| 苏尼特右旗| 潼南县| 保德县| 布拖县| 宝坻区| 顺昌县| 昭平县| 沁水县| 淮阳县| 喜德县| 墨竹工卡县| 定州市| 赤城县| 马关县| 隆子县| 灵台县| 措勤县| 阳春市| 上高县| 峨眉山市| 高安市| 卓资县|