logrotate tomcat 日誌切割

2021-08-21 10:11:04 字數 2458 閱讀 6008

一般來說,日誌是任何故障排除過程中非常重要的一部分,但這些日誌會隨著時間增長。在這種情況下,我們需要手動執行日誌清理以**空間,這是一件繁瑣的管理任務。為了解決這個問題,我們可以在 linux 中配置 logrotate 程式,它可以自動執行日誌檔案的輪換、壓縮、刪除和用郵件發出。

我們可以配置 logrotate 程式,以便每個日誌檔案可以在每天、每週、每月或當它變得太大時處理。

在/etc/logrotate.d/ 目錄下新建乙個檔案,命名隨意。

1 /etc/logrotate.d/tomcat

/var/log/tomcat/catalina.out 

各個配置的具體含義:

每天晚上,cron daemon會自動執行/etc/cron.daily目錄下的任務

這個會觸發/etc/cron.daily/logrotate檔案,logrotate一般是隨linux按安裝的。它會執行這個命令-「/etc/sbin/logrotate /etc/logrotate.conf」(注意空格)

/etc/logrotate.conf包含了/etc/logrotate.d目錄下的所有指令碼

這個會觸發上一步你寫的/etc/logrotate.d/tomcate檔案

1 vi logrotate.sh

#!/bin/bash

/usr/sbin/logrotate /etc/logrotate.conf

chmod a+x logrotate.sh

2.新增自動化任務每天中午12點執行

00 12 * * * /usr/bin/sh logrotate.sh

預設情況下,logrotate 命令作為放在/etc/cron.daily中的 cron 任務,每天執行一次,它會幫助你設定乙個策略,其中超過某個時間或大小的日誌檔案被輪換。

命令:/usr/sbin/logrotate

配置檔案:/etc/logrotate.conf

這是 logrotate 的主配置檔案。logrotate 還在/etc/logrotate.d/中儲存了特定服務的配置。確保下面的那行包含在/etc/logrotate.conf中,以讀取特定服務日誌配置。

include

/etc

/logrotate.d

`

logrotate 歷史:/var/lib/logrotate.status

重要的 logrotate 選項:

compress 

-->

壓縮日誌檔案的所有非當前版本

daily

,weekly

,monthly

-->

按指定計畫輪換日誌檔案

delaycompress

-->

壓縮所有版本,除了當前和下乙個最近的

endscript

-->

標記prerotate

或postrotate

指令碼的結束

errors

"emailid"

-->

給指定郵箱傳送錯誤通知

missingok

-->

如果日誌檔案丟失,不要顯示錯誤

notifempty

-->

如果日誌檔案為空,則不輪換日誌檔案

olddir

"dir"

-->

指定日誌檔案的舊版本放在

「dir

」中

postrotate

-->

引入乙個在日誌被輪換後執行的指令碼

prerotate

-->

引入乙個在日誌被輪換前執行的指令碼

rotate

'n'-->

在輪換方案中包含日誌的

n 個版本

sharedscripts

-->

對於整個日誌組只執行一次指令碼

size

='logsize'

-->

在日誌大小大於

logsize

(例如100k,4m

)時輪換

Logrotate Tomcat 日誌切割

切到root,寫個指令碼 su cdvi log cut.sh bin bash auth root date 2020 04 29 yum y install logrotate sed i s compress compress etc logrotate.conf cat etc logrot...

使用spring Aop 切日誌 日誌管理

先看效果圖下面是資料庫的儲存操作日誌 配置檔案 工具類 public object around proceedingjoinpoint pjp throws throwable 方法通知前獲取時間,為什麼要記錄這個時間呢?當然是用來計算模組執行時間的 long start system.curre...

使用Lumberjack zap進行日誌切割歸檔

為了新增日誌切割歸檔功能,我們將使用第三方庫lumberjack來實現。執行下面的命令安裝lumberjack go get u github.com natefinch lumberjack要在zap中加入lumberjack支援,我們需要修改writesyncer 我們將按照下面的 修改getl...