分割nginx日志的實(shí)現(xiàn)(避免日志多大)
1. 問題提出
nginx的日志沒有切分,會非常大,不利于日志的刪除和查看

2. 解決思路
- 寫一個腳本,去切分日志
- 使用crontab寫一個定時任務(wù),每天切一個。
3. 解決流程
腳本時別人的,拿過來用。
3.1 新建切割日志的腳本/opt/sh/cutlogs.sh
內(nèi)容如下:
#!/bin/bash
# 指定日志和切割后日志備份的目錄
YEAR=$(date +%Y)
MONTH=$(date +%m)
DAY=$(date +%d)
YESTERDAY=$(date -d "yesterday" +%Y-%m-%d)
LOGS_PATH=/data/docker/saber/logs
LOGS_BAK_PATH=/data/docker/saber/logs-bak
# 得到1級目錄名
if [[ $(($DAY)) -eq 1 ]]
then
if [[ $(($MONTH)) -eq 1 ]]
then
LOGS_BAK_PATH=$LOGS_BAK_PATH/$((${YEAR}-1))-12
else
if [[ $(($MONTH)) -gt 10 ]]
then
LOGS_BAK_PATH=$LOGS_BAK_PATH/${YEAR}-$((${MONTH}-1))
else
LOGS_BAK_PATH=$LOGS_BAK_PATH/${YEAR}-0$((${MONTH}-1))
fi
fi
else
LOGS_BAK_PATH=$LOGS_BAK_PATH/${YEAR}-${MONTH}
fi
# 創(chuàng)建目錄
mkdir -p $LOGS_BAK_PATH/${YESTERDAY}
# 復(fù)制當(dāng)前的日志文件到備份的目錄
cp ${LOGS_PATH}/access.log ${LOGS_BAK_PATH}/${YESTERDAY}/access_${YESTERDAY}.log
#cp ${LOGS_PATH}/admin_access.log ${LOGS_BAK_PATH}/${YESTERDAY}/admin_access_${YESTERDAY}.log
cp ${LOGS_PATH}/error.log ${LOGS_BAK_PATH}/${YESTERDAY}/error_${YESTERDAY}.log
# 清空日志
> ${LOGS_PATH}/access.log
#> ${LOGS_PATH}/admin_access.log
> ${LOGS_PATH}/error.log
3.2 寫crontab定時任務(wù)
crontab -e
打開crontab
寫入任務(wù),每天1點(diǎn)跑定時任務(wù):
0 1 * * * sh /opt/sh/cutlogs.sh >> /opt/sh/cutlogs.log
3.3 結(jié)果
結(jié)果如下:
日志全部在/data/docker/saber/logs-bak目錄下

logs-bak下面是月

月下面是天

天下面是文件

4. 總計
- 使用腳本去做切分
- 使用定時器去每天跑腳本。
到此這篇關(guān)于分割nginx日志的實(shí)現(xiàn)(避免日志多大)的文章就介紹到這了,更多相關(guān)分割nginx日志內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Nginx靜態(tài)資源服務(wù)器的實(shí)現(xiàn)示例
靜態(tài)資源即非服務(wù)器動態(tài)生成的文件,本文主要介紹了Nginx靜態(tài)資源服務(wù)器的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-08-08
web部署到nginx以后js,css等靜態(tài)文件加載不正常的解決過程
在Ubuntu中配置Web頁面時,JS和CSS文件雖可獲取但加載失敗,可能因路徑錯誤、服務(wù)器配置不當(dāng)、權(quán)限限制或緩存問題導(dǎo)致頁面布局異常,需檢查文件路徑、服務(wù)器設(shè)置、MIME類型及瀏覽器控制臺錯誤信息以排查原因2025-09-09
使用Nginx限制IP請求和并發(fā)連接數(shù)的實(shí)現(xiàn)方法
本文主要介紹了使用Nginx限制IP請求和并發(fā)連接數(shù)的實(shí)現(xiàn)方法,通過使用Nginx的限制模塊,我們可以輕松地實(shí)現(xiàn)對IP請求和并發(fā)連接數(shù)的限制,具體就跟小編一起來了解一下2024-03-03
滑塊驗證完整實(shí)現(xiàn)部署流程(前端?+?后端?+?Nginx?集成)
滑塊驗證作為一種反機(jī)器人的工具,也會不斷發(fā)展和演進(jìn),以適應(yīng)不斷變化的威脅,這篇文章主要介紹了滑塊驗證完整實(shí)現(xiàn)部署流程(前端?+?后端?+?Nginx集成)的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2025-12-12

