Linux 系統實現log日誌自動清理

2022-07-31 07:24:13 字數 3419 閱讀 8615

linux系統實現log日誌自動清理

body

body>*:first-child

body>*:last-child

p, blockquote, ul, ol, dl, table, pre

h1, h2, h3, h4, h5, h6

h1 tt, h1 code, h2 tt, h2 code, h3 tt, h3 code, h4 tt, h4 code, h5 tt, h5 code, h6 tt, h6 code

h1 h2

h3 h4

h5 h6

body>h2:first-child, body>h1:first-child, body>h1:first-child+h2, body>h3:first-child, body>h4:first-child, body>h5:first-child, body>h6:first-child

a:first-child h1, a:first-child h2, a:first-child h3, a:first-child h4, a:first-child h5, a:first-child h6

h1+p, h2+p, h3+p, h4+p, h5+p, h6+p

a a:hover

ul, ol

ul li>:first-child, ol li>:first-child, ul li ul:first-of-type, ol li ol:first-of-type, ul li ol:first-of-type, ol li ul:first-of-type

ul ul, ul ol, ol ol, ol ul

dl dl dt

dl dt:first-child

dl dt>:first-child

dl dt>:last-child

dl dd

dl dd>:first-child

dl dd>:last-child

pre, code, tt

code, tt

pre>code

pre

pre code, pre tt

kbd

blockquote

blockquote>:first-child

blockquote>:last-child

hr table th

table th, table td

table tr

table tr:nth-child(2n)

img

在實際專案中由於伺服器記憶體有限,人工制定的定時清理時常會忘記。因此啟用linux系統定時任務去執行日誌清理功能。引用文獻

touch /**/**/auto-del-log.sh    //建立指令碼檔案

cd /**/** //進入該目錄

chmod +x auto-del-log.sh //修改執行許可權

vi auto-del-log.sh              //編輯執行檔案

#!/bin/sh

find /**/**/logs/ -mtime +10 -name "*.log.*" -exec rm -rf {} \;

crontab -e
新增執行shell指令碼

30 0 * * * /**/**/auto-del-log.sh
crontab樣式注釋: # for details see man 4 crontabs

# example of job definition:

# .---------------- minute (0 - 59)

# | .------------- hour (0 - 23)

# | | .---------- day of month (1 - 31)

# | | | .------- month (1 - 12) or jan,feb,mar,apr ...

# | | | | .---- day of week (0 - 6) (sunday=0 or 7) or sun,mon,tue,wed,thu,fri,sat

# | | | | |

# * * * * * user-name command to be executed

shell指令碼說明:

說明:  

find:linux查詢命令,使用者查詢指定條件的檔案

-mtime:標準語句寫法

+10 :數字代表天數

-name "*.log.*":目標檔案的型別,帶有log的所有檔案

-exec:固定寫法

rm -rf:強制刪除包括目錄在內的檔案

{} \;:固定寫法,一對大括號+空格+\+;

eg:find /usr/local/tomcat/logall/monitor/ -mtime +7 -name "*.log.*" -exec rm -rf {} \;

#!/bin/sh

log_path=/home/tomcat/logs //日誌存放目錄

d=`date +%y-%m-%d` //時間獲取

d90=`date -d'7 day ago' +%y-%m-%d` //獲取刪除時間7天前

cd $ && cp catalina.out $log_path/cron/catalina.out.$d.log 檔案分割,複製檔案到 $log_path/cron/ 目錄下生成新的日誌檔案

echo > catalina.out //新的空白catalina.out檔案繼續記錄日誌

rm -rf $log_path/cron/catalina.out.$.log //刪除超時檔案

find $ -mtime +7 -name "*.*.log" -exec rm -rf {} \; //刪除$目錄下超過7天格式為"*.*.log"的檔案

find /home/tomcat/logall/monitor/ -mtime +7 -name "*.log.*" -exec rm -rf {} \;

find /home/tomcat/logall/user/ -mtime +7 -name "*.log.*" -exec rm -rf {} \;

find /home/tomcat/logall/admin/ -mtime +7 -name "*.log.*" -exec rm -rf {} \;

Linux系統實現log日誌自動清理

在實際專案中由於伺服器記憶體有限,人工制定的定時清理時常會忘記。因此啟用linux系統定時任務去執行日誌清理功能。引用文獻 touch auto del log.sh 建立指令碼檔案 cd 進入該目錄 chmod x auto del log.sh 修改執行許可權vi auto del log.sh...

解剖Linux系統的LOG日誌檔案

日誌檔案是專門用於記錄系統操作事件的記錄檔案或檔案集合,作業系統有作業系統日誌檔案,資料庫系統有資料庫系統日誌檔案,等等。今天介紹下log日誌檔案。網管主要靠系統的log,即我們時常所說的日誌檔案,來獲得侵入的痕跡及你進來的ip,或其他資訊。當然也有些網管使用第三方工具來記錄侵入他電腦的痕跡,這裡主...

如何檢視linux的系統log日誌

1.檢視系統日誌所存放的位置 通過nginx的配置檔案檢視 default access log var log nginx hej.access.log common 2.檢視系統日誌的格式 通過nginx的配置檔案檢視 nginx.conf。如果是apache,對應找到httpd檔案 log f...