欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

nginx日志切割定時(shí)任務(wù)的實(shí)現(xiàn)

 更新時(shí)間:2024年11月07日 10:56:25   作者:紅色心臟  
Nginx日志切割能有效管理日志,便于查詢(xún)、控制存儲(chǔ)空間、提高處理效率、方便備份與歸檔,減少數(shù)據(jù)丟失風(fēng)險(xiǎn),實(shí)現(xiàn)方法包括重命名日志文件、編寫(xiě)定時(shí)日志腳本和設(shè)置crontab定時(shí)任務(wù)

nginx進(jìn)行日志切割的好處:

  • 便于管理和查詢(xún):隨著時(shí)間的推移,Nginx 日志文件可能會(huì)變得非常大。將其切割成較小的、按時(shí)間段劃分的文件,使得在需要查找特定時(shí)間段的日志時(shí)更加方便和高效。

  • 控制存儲(chǔ)空間:未切割的日志文件可能會(huì)迅速消耗大量的磁盤(pán)空間。通過(guò)定期切割并刪除較舊的日志,可以有效地控制存儲(chǔ)空間的使用。

  • 提高處理效率:處理較小的切割后的日志文件比處理一個(gè)巨大的整體日志文件要快得多,特別是在進(jìn)行日志分析、備份或數(shù)據(jù)挖掘等操作時(shí)。

  • 方便備份和歸檔:切割后的日志可以更有組織地進(jìn)行備份和歸檔,符合數(shù)據(jù)保留策略和合規(guī)要求。

  • 避免單一文件損壞導(dǎo)致數(shù)據(jù)丟失:如果一個(gè)巨大的日志文件損壞,可能會(huì)丟失大量的日志數(shù)據(jù)。而切割后的多個(gè)較小文件,降低了這種風(fēng)險(xiǎn)。

  • 更好地跟蹤和監(jiān)控:可以根據(jù)切割后的日志文件,更清晰地跟蹤和監(jiān)控系統(tǒng)在不同時(shí)間段的活動(dòng)和性能。

實(shí)現(xiàn)步驟:

1.給access.log日志文件重命名,并備份

在 Linux 系統(tǒng)中,當(dāng)需要切割 Nginx 日志文件時(shí)(例如按天切割),一般需要先將當(dāng)前日志文件移動(dòng)并重命名,然后使用“nginx -s reopen”命令重新打開(kāi)新的日志文件進(jìn)行記錄

[root@localhost logs]# ls                                
access.log  error.log  nginx.pid                                           

## nginx的日志文件是/logs/access.log  

[root@localhost logs]# mv access.log "access.log_$(date +"%Y-%m-%d")"
## 這條命令的作用是將當(dāng)前的 access.log 文件重命名為 access.log_<當(dāng)前日期> 的格式

[root@localhost logs]# nginx -s reopen

[root@localhost logs]# ls
access.log  access.log_2024-07-15  error.log  nginx.pid
##可以看到7月15的日志已經(jīng)備份,再有新日志就會(huì)記錄在access.log里,

2.編寫(xiě)定時(shí)日志腳本         

在生產(chǎn)環(huán)境下,也就是工作中,日志切割主要以定時(shí)任務(wù)的形式來(lái)操作

[root@localhost ~]# mkdir myscripts/

[root@localhost ~]# cd myscripts/
[root@localhost myscripts]# vim cut_nginx_log.sh
## 創(chuàng)建myscripts文件夾,用來(lái)存放用戶(hù)自己編寫(xiě)的腳本文件,編寫(xiě)cut_nginx_log.sh腳本

釋?zhuān)?/p>

腳本代碼:

#!/bin/bash
# 定義日志目錄和文件名 
LOG_DIR="/opt/nginx/logs" 
ACCESS_LOG="$LOG_DIR/access.log" 
ERROR_LOG="$LOG_DIR/error.log"
# 獲取當(dāng)前日期 
CURRENT_DATE=$(date +%Y%m%d) 
# 創(chuàng)建新的日志文件 
touch "$ACCESS_LOG.$CURRENT_DATE" 
touch "$ERROR_LOG.$CURRENT_DATE" 
# 重命名舊的日志文件
mv "$ACCESS_LOG" "$ACCESS_LOG.$CURRENT_DATE" 
mv "$ERROR_LOG" "$ERROR_LOG.$CURRENT_DATE" 
# 向 Nginx 主進(jìn)程發(fā)送 USR1 信號(hào),使其重新打開(kāi)日志文件
kill -USR1 $(cat /opt/nginx/logs/nginx.pid)

3.運(yùn)行日志切割腳本

[root@localhost myscripts]# bash cut_nginx_log.sh 
## 運(yùn)行bash腳本文件

[root@localhost myscripts]# yum install -y tree
## 安裝tree,tree 是一個(gè)用于以樹(shù)狀圖形式列出目錄內(nèi)容的命令行工具,能夠清晰地展示目錄和文件的層次結(jié)構(gòu)。

[root@localhost logs]# tree ./

## 用tree 查看logs文件夾,看該目錄的詳細(xì)結(jié)構(gòu),可以看到access.log和error.log都因運(yùn)行了日志切割腳本生成備份文件

4.將日志切割腳本加入crontab定時(shí)任務(wù)

[root@localhost ~]# crontab -e

## crontab -e 命令用于編輯當(dāng)前用戶(hù)的定時(shí)任務(wù)(Cron 任務(wù))配置。

## 每天凌晨 1 點(diǎn)執(zhí)行該腳本任務(wù)

crontab定時(shí)任務(wù)配置講解

crontab 定時(shí)任務(wù)的配置格式如下:

其中,每個(gè) * 代表的含義分別是:

  • 分鐘(0 - 59)
  • 小時(shí)(0 - 23)
  • 日(1 - 31)
  • 月(1 - 12 或 JAN - DEC)
  • 星期(0 - 6 或 SUN - SAT,0 表示星期日)

以下是一些常見(jiàn)的配置示例:

  • 每 5 分鐘執(zhí)行一次任務(wù):

    */5 * * * * command

  • 每天凌晨 1 點(diǎn)執(zhí)行任務(wù):

    0 1 * * * command

  • 每月 1 號(hào)中午 12 點(diǎn)執(zhí)行任務(wù):

    0 12 1 * * command

  • 每周一早上 8 點(diǎn)執(zhí)行任務(wù):

    0 8 * * 1 command

  • 每年 1 月 1 日 0 點(diǎn)執(zhí)行任務(wù):

    0 0 1 1 * command

請(qǐng)將 command 替換為您實(shí)際要執(zhí)行的命令或腳本路徑。

配置完成后,保存并退出編輯界面,定時(shí)任務(wù)就會(huì)按照您設(shè)置的規(guī)則生效。

到此這篇關(guān)于nginx日志切割定時(shí)任務(wù)的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)nginx日志切割定時(shí)任務(wù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • nginx反向代理配置去除前綴案例教程

    nginx反向代理配置去除前綴案例教程

    這篇文章主要介紹了nginx反向代理配置去除前綴案例教程,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • 使用Nginx部署Vue項(xiàng)目全過(guò)程及踩坑記錄

    使用Nginx部署Vue項(xiàng)目全過(guò)程及踩坑記錄

    這篇文章主要介紹了使用Nginx部署Vue項(xiàng)目全過(guò)程及踩坑記錄,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 內(nèi)網(wǎng)環(huán)境nginx配置https訪問(wèn)的過(guò)程詳解

    內(nèi)網(wǎng)環(huán)境nginx配置https訪問(wèn)的過(guò)程詳解

    這篇文章主要介紹了內(nèi)網(wǎng)環(huán)境nginx配置https訪問(wèn),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-06-06
  • nginx https 443端口配置的方法

    nginx https 443端口配置的方法

    本文主要介紹了nginx https 443端口配置的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • Nginx負(fù)載均衡詳細(xì)介紹

    Nginx負(fù)載均衡詳細(xì)介紹

    nginx不單可以作為強(qiáng)大的web服務(wù)器,也可以作為一個(gè)反向代理服務(wù)器,而且nginx還可以按照調(diào)度規(guī)則實(shí)現(xiàn)動(dòng)態(tài)、靜態(tài)頁(yè)面的分離,可以按照輪詢(xún)、ip哈希、URL哈希、權(quán)重等多種方式對(duì)后端服務(wù)器做負(fù)載均衡,同時(shí)還支持后端服務(wù)器的健康檢查
    2016-09-09
  • nginx常用操作命令詳解

    nginx常用操作命令詳解

    這篇文章主要介紹了nginx常用操作命令,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-07-07
  • Nginx服務(wù)器配置性能優(yōu)化方案

    Nginx服務(wù)器配置性能優(yōu)化方案

    這篇文章主要為大家詳細(xì)介紹了Nginx服務(wù)器配置性能優(yōu)化方案,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • 詳解基于CentOS 7配置Nginx自啟動(dòng)

    詳解基于CentOS 7配置Nginx自啟動(dòng)

    這篇文章主要介紹了詳解基于CentOS 7配置Nginx自啟動(dòng),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-03-03
  • 一次nginx 504 Gateway Time-out錯(cuò)誤排查、解決記錄

    一次nginx 504 Gateway Time-out錯(cuò)誤排查、解決記錄

    這篇文章主要介紹了一次nginx 504 Gateway Time-out錯(cuò)誤排查、解決記錄,經(jīng)過(guò)反復(fù)檢查,發(fā)現(xiàn)造成這個(gè)問(wèn)題的原因就是PHP的CURL沒(méi)有設(shè)置超時(shí)時(shí)間,解決辦法只要設(shè)置超時(shí)時(shí)間或者修改一下nginx的配置即可解決,需要的朋友可以參考下
    2014-05-05
  • NGINX配置目錄遍歷漏洞的解決

    NGINX配置目錄遍歷漏洞的解決

    目錄遍歷是一種安全漏洞,通常會(huì)影響Nginx服務(wù)器上的Web應(yīng)用程序,本文就來(lái)介紹一下NGINX配置目錄遍歷漏洞的解決,感興趣的可以了解一下
    2023-10-10

最新評(píng)論