CentOS 7中Nginx日志定時拆分實現(xiàn)過程詳解
一、編寫拆分腳本(splitNginxLog.sh)
* 因為本例中設(shè)置每天0點進行日志的拆分,所以folder和rq均設(shè)置采用昨天的日期進行歸檔。
#!/bin/bash folder=`date -d yesterday +%Y%m` rq=`date -d yesterday +%Y%m%d` # 原始日志路徑 logs_path="/var/log/nginx/sitename.com/" # 日志備份路徑 logs_backup_path="/var/log/nginx/sitename.com/$folder" # 要分割的日志 logs_access="access" logs_error="error" # 創(chuàng)建備份路徑 [ -d $logs_backup_path ]||mkdir -p $logs_backup_path # 將日志移入備份文件夾 mv ${logs_path}${logs_access}.log ${logs_backup_path}/${logs_access}_${rq}.log mv ${logs_path}${logs_error}.log ${logs_backup_path}/${logs_error}_${rq}.log # 終止nginx的pid pid_path="/var/run/nginx.pid" kill -USR1 $(cat $pid_path)
二、測試日志拆分腳本
在.sh文件的存放目錄下運行如下語句,測試拆分腳本是否成功。
# sh splitNginxLog.sh
如果提示$'\r': 未找到命令的解決,則有可能是.sh文件編碼問題,是因為在Windows編輯器中編寫的腳本與在linux中的有一些區(qū)別。
處理方法:
1. 安裝dos2unix用于轉(zhuǎn)化編碼
# yum install dos2unix
2. 轉(zhuǎn)換編碼
# dos2unix splitNginx.sh
三、設(shè)置定時自動執(zhí)行
# crontab -l //列出所有的定時任務(wù)
# crontab -e //編輯定時任務(wù)
在其中編寫如下語句:
00 00 * * * bash /root/splitNginxLog.sh
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Centos 安裝 PHP7.4 和 Nginx的操作方法
- centos8 安裝 nginx的詳細(xì)教程(圖文)
- centos7.2搭建nginx的web服務(wù)器部署uniapp項目
- 解決Centos7安裝nginx后提示“Welcome to nginx on Fedora!”,conf.d目錄下無default.conf文件
- Centos7.3 安裝部署Nginx并配置https的方法步驟
- CentOS7將Nginx添加系統(tǒng)服務(wù)的方法步驟
- CentOS7安裝Nginx并配置自動啟動的方法步驟
- Centos7啟動流程及Systemd中Nginx啟動配置
- 搭建docker內(nèi)網(wǎng)私服的方法(docker-registry with nginx&ssl on centos)
相關(guān)文章
阿里云OSS訪問權(quán)限配置(RAM權(quán)限控制)實現(xiàn)
這篇文章主要介紹了阿里云OSS訪問權(quán)限配置(RAM權(quán)限控制)實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08Apache Shiro 使用手冊(五) Shiro 配置說明
這篇文章主要為大家分享了Apache Shiro 配置說明,需要的朋友可以參考下2014-06-06Centos7.2 系統(tǒng)上yum安裝lamp環(huán)境
這篇文章主要介紹了centos7.2 系統(tǒng)上yum安裝lamp環(huán)境的相關(guān)資料,非常不錯具有參考借鑒價值,需要的朋友可以參考下2016-11-11