nginx日志切割

1.切割http日志

LOGS_DIR="/data/nlu/chatgpt_adapter/nginx/logs/http"
cd ${LOGS_DIR} 切换到日志目录文件下

获取error.log文件的字节大小

log_size=du -b error.log | awk '{print $1}'

判断error.log文件的大小是否大于等于1G

if [ ${log_size} -ge ${MAX_SIZE} ]; then
# 按照创建时间排序,
log_file_list=ls -rt error.log*
for file in ${log_file_list}
do
if [ ${file} == "error.log" ]; then
mv ${file} ${file}.1
mv access.log access.log.1
kill -USR1 cat ../nginx.pid
else
suffix_num=echo "${file}" | awk '{print substr($1, length("error.log.") + 1);}'
if [ ${suffix_num} -ge ${MAX_SUFFIX_NUM} ]; then
rm -f ${file} access.log.${suffix_num}
else
new_suffix_num=$((${suffix_num}+1))
mv ${file} error.log.${new_suffix_num}
mv access.log.${suffix_num} access.log.${new_suffix_num}
fi
fi
done
fi

posted @ 2025-04-23 22:37  小郑[努力版]  阅读(32)  评论(0)    收藏  举报