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

Nginx日志按天分割實(shí)戰(zhàn)

 更新時(shí)間:2024年05月20日 11:42:15   作者:龍叔運(yùn)維  
本文主要介紹了Nginx日志按天分割實(shí)戰(zhàn),方便快速按照天的維度分析以及查找報(bào)錯(cuò)定位,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

前言

nginx日志文件建議按照天的維度進(jìn)行分割,方便快速按照天的維度分析以及查找報(bào)錯(cuò)定位

一、方式1:定時(shí)任務(wù)執(zhí)行分割腳本

1.分割日志腳本

創(chuàng)建一個(gè)sh文件,寫(xiě)入以下內(nèi)容(個(gè)別內(nèi)容根據(jù)自己nginx的情況修改)

我這里的文件為 /usr/local/nginx/log_bak.sh

#/bin/bash 
 
yesterday=$(date +%Y-%m-%d)  #取得服務(wù)器當(dāng)前時(shí)間
 
savepath_log=' /var/log/nginx_bak'#分割后的日志文件保存目錄(注意結(jié)尾目錄斜杠去掉)
 
nglogs='/usr/local/nginx/logs'  #nginx日志文件目錄,具體根據(jù)實(shí)際地址替換(結(jié)尾目錄斜杠去掉 以免與下面路徑中的"/"重復(fù))
 
 
 
#判斷分割日志保存目錄是否存在不存在則創(chuàng)建 
 
if [ ! -d ${savepath_log} ]   # 注意 語(yǔ)句之間 空格不可省略,這是bash腳本 不是php腳本那樣隨和 
 
then
 
mkdir -p ${savepath_log}
 
fi 
 
#通過(guò)mv命令將日志移動(dòng)到分割后的日志目錄里,然后發(fā)送kill -USR1信號(hào)給Nginx的主進(jìn)程號(hào),讓Nginx重新生成一個(gè)新的日志文件。
 
mv ${nglogs}/access.log  ${savepath_log}/access_${yesterday}.log  #具體根據(jù)你的實(shí)際日志文件名路徑 進(jìn)行修改access.log名字
 
mv ${nglogs}/error.log  ${savepath_log}/error_${yesterday}.log  #具體根據(jù)實(shí)際日志文件名地址 修改error.log名字
 
mv ${nglogs}/host.access.log  ${savepath_log}/host.access_${yesterday}.log 
kill -USR1 $(cat /usr/local/nginx/logs/nginx.pid)  #通知nginx重新生成新的日志

2.添加定時(shí)任務(wù)

crontab -e 后添加下面內(nèi)容

59  23  * * * /usr/local/nginx/log_bak.sh(自己寫(xiě)的腳本的路徑)

這樣每天的23點(diǎn)59就會(huì)將當(dāng)天的日志進(jìn)行備份,并生成新的日志文件繼續(xù)記錄訪問(wèn)日志

二、方式2:logrotate配置分割

1.logrotate簡(jiǎn)單介紹

logrotate 是一個(gè) Linux系統(tǒng)日志的管理工具??梢詫?duì)單個(gè)日志文件或者某個(gè)目錄下的文件按時(shí)間 / 大小進(jìn)行切割,壓縮操作;指定日志保存數(shù)量;還可以在切割之后運(yùn)行自定義命令。

主流 Linux 發(fā)行版上都默認(rèn)安裝有 logrotate 包,如果你的 Linux 系統(tǒng)中找不到 logrotate, 可以使用 apt-get 或 yum 命令來(lái)安裝。

yum install -y logrotate

下面命令可以查看是否安裝了

rpm -ql logrotate

/etc/logrotate.conf是主配置文件,/etc/logrotate.d 文件夾下面是自定義的配置文件

2.新增切割nginx日志的配置文件

在/etc/logrotate.d目錄下新增nginx文件 

vi nginx 寫(xiě)入下面內(nèi)容(我的日志文件目錄是/data/wxl/nginx/logs/)

/data/wxl/nginx/logs/

/data/nginx/logs/*.log {
    daily        # 按天分割              
    rotate 30    #保留30個(gè)文件 
    create
    sharedscripts   # 所有的文件切割之后只執(zhí)行一次下面腳本,通知nginx重新打開(kāi)新的日志文件進(jìn)行后續(xù)寫(xiě)入
    postrotate
        if [ -f /data/nginx/logs/nginx.pid ]; then
            kill -USR1 `cat /data/nginx/logs/nginx.pid`  # 通過(guò)USER1信號(hào)通知nginx重新打開(kāi)日志文件
        fi
    endscript
}

這樣就會(huì)每天定時(shí)分割日志了

也可以手動(dòng)執(zhí)行命令測(cè)試一下能否正常分割日志

logrotate -f /etc/logrotate.d/nginx

3.備份日志壓縮

如果分割后的日志想要壓縮進(jìn)行空間節(jié)約

可以加上下面配置

    compress           # 以gzip方式壓縮
    nodelaycompress    # 所有分割后的文件都進(jìn)行壓縮

 推薦將 nodelaycompress 改為 delaycompress,這樣分割后對(duì)最新的序號(hào)為1的文件不會(huì)進(jìn)行壓縮,對(duì)其他序號(hào)的文件進(jìn)行壓縮,這樣可以方便我們查看最新的分割日志。

4.分割日志后綴改為日期

如果想要分割后的日志后綴為當(dāng)天日志的日期,可以加上下面的配置

    dateext  # 切割后的文件添加日期作為后綴
    dateyesterday # 配合dateext使用,添加前一天的日期作為分割后日志的后綴
    dateformat -%Y-%m-%d  # 格式為2022-02-08

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

相關(guān)文章

  • Nginx配置二級(jí)域名的方法實(shí)現(xiàn)

    Nginx配置二級(jí)域名的方法實(shí)現(xiàn)

    本文主要介紹了Nginx配置二級(jí)域名的方法實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • 用Nginx反向代理Node.js的方法

    用Nginx反向代理Node.js的方法

    本篇文章主要介紹了用Nginx反向代理Node.js的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • 使用Nginx解決跨域訪問(wèn)問(wèn)題的完整案例

    使用Nginx解決跨域訪問(wèn)問(wèn)題的完整案例

    在現(xiàn)代的Web開(kāi)發(fā)中,跨域訪問(wèn)是一種常見(jiàn)的需求,由于瀏覽器的同源策略,不同域名之間的訪問(wèn)存在一定的限制,本文將介紹如何使用Nginx來(lái)解決跨域訪問(wèn)的問(wèn)題,并通過(guò)一個(gè)完整的實(shí)例來(lái)展示,需要的朋友可以參考下
    2024-03-03
  • nginx命令參數(shù)用法詳細(xì)介紹

    nginx命令參數(shù)用法詳細(xì)介紹

    這篇文章主要介紹了nginx命令參數(shù)用法詳細(xì)介紹的相關(guān)資料,希望通過(guò)本文可以幫助到大家理解并應(yīng)用這部分知識(shí),需要的朋友可以參考下
    2017-08-08
  • nginx配置指令之server_name的具體使用

    nginx配置指令之server_name的具體使用

    本文主要介紹了nginx配置指令之server_name的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • nginx搭建jsdelivr鏡像站過(guò)程詳解

    nginx搭建jsdelivr鏡像站過(guò)程詳解

    這篇文章主要為大家介紹了nginx搭建jsdelivr鏡像站的步驟詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • linux(centos5.5)/windows下nginx開(kāi)啟phpinfo模式功能的配置方法分享

    linux(centos5.5)/windows下nginx開(kāi)啟phpinfo模式功能的配置方法分享

    某站點(diǎn)用到結(jié)合phpinfo功能的urlrewrite,在nginx中需要在nginx.conf文件中進(jìn)行配置才可支持phpinfo
    2013-02-02
  • nginx限制ip訪問(wèn)頻率的實(shí)現(xiàn)示例

    nginx限制ip訪問(wèn)頻率的實(shí)現(xiàn)示例

    Nginx通過(guò)limit_conn_zone 和 limit_req_zone對(duì)同一個(gè)IP地址進(jìn)行限速限流,本文主要介紹了nginx限制ip訪問(wèn)頻率的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • 使用Nginx反向代理實(shí)現(xiàn)多端口跳轉(zhuǎn)的實(shí)戰(zhàn)分享

    使用Nginx反向代理實(shí)現(xiàn)多端口跳轉(zhuǎn)的實(shí)戰(zhàn)分享

    在現(xiàn)代Web開(kāi)發(fā)中,Nginx作為一款高性能的開(kāi)源反向代理服務(wù)器,提供了強(qiáng)大的功能來(lái)管理網(wǎng)絡(luò)流量和路由,本文將介紹如何利用 Nginx 的反向代理功能,以實(shí)現(xiàn)多端口跳轉(zhuǎn)的效果,需要的朋友可以參考下
    2024-02-02
  • 記一次nginx配置不當(dāng)引發(fā)的499與failover 機(jī)制失效問(wèn)題

    記一次nginx配置不當(dāng)引發(fā)的499與failover 機(jī)制失效問(wèn)題

    近期在非高峰期也存在499超過(guò)告警閾值的偶發(fā)情況,多的時(shí)候一天幾次,少的時(shí)候則幾天一次,持續(xù)一般也就數(shù)分鐘,經(jīng)過(guò)和小伙伴的共同探究,最后發(fā)現(xiàn)之前對(duì)于499是客戶端主動(dòng)斷開(kāi)因而和服務(wù)端關(guān)系不大的想當(dāng)然認(rèn)知是錯(cuò)誤的,這里記錄一下
    2023-05-05

最新評(píng)論