52AV手機A片王|52AV.one

 找回密碼
 立即註冊
查看: 1526|回復: 0

[nginx|php-fpm] nginx的log檔沒有被自動壓縮備份

[複製鏈接]
發表於 2016-11-3 16:51:30 | 顯示全部樓層 |閱讀模式
tid=50612& 本帖最後由 IT_man 於 2016-11-3 21:24 編輯
$ H  v4 w% B) L9 Y5 G$ @$ u5 l( v  p& A! Y! [" B
CentOS下nginx的log檔放在/var/log/nginx,但查看卻沒有被自動切割並壓縮.) g! E! Z% j: m$ l9 A5 |$ ~. S' ~
找了google才發現原來缺少了/etc/logrotate.d/nginx檔,照理安裝nginx時應該會自動產生此檔,為何我的不會自動產生,可能是安裝時出了差錯.
9 p2 J" S0 B6 D9 i) _0 }" t0 f於是乎我從別台server複製過來,搞定.
: ^$ X! S1 e/ H; L8 T
7 Y  P' l( j3 u/ ?4 W4 w
& ?) ?2 f/ e" n* m
( V" a3 Z' ~+ X% M
以下說明日誌管理服務logrotate運作原理:% ~  T- a$ @* E: q: {

+ W. z/ |3 S# C4 \8 ?1 s

8 d' H  b2 b" _1 p3 |# t4 a因為Nginx在安裝時加入了一個logrotate任務: /etc/logrotate.d/nginx " v! T& X6 n* \/ G& e
/var/log/nginx/*.log {
. D1 b% R' T$ r4 [' v6 U) S' D        daily
8 K( ?5 W/ j4 r6 H        missingok
$ }5 m, A2 y$ x0 g) E        rotate 52
. m+ M3 ?% ^* Q9 H/ R: [        compress
) S& ]  @* K# b+ a4 y7 b2 q        delaycompress - V8 Z1 f7 q' S( M  I% }/ M
        notifempty - n: @* e- o/ ^$ o
        create 640 nginx adm
3 E3 q" \* B7 j$ ^3 \5 X        sharedscripts $ P2 s$ X5 T- q
        postrotate
3 Y* j0 E# N0 O" v- g* H& b                [ -f /var/run /nginx.pid ] && kill -USR1 `cat /var/run/nginx.pid`
' ?  @. [& D; N% F3 H7 ~        endscript 4 V8 `( ^$ m- t% P4 x$ s
}
7 h- d# f! v) r2 Y+ B% \Linux日誌管理服務logrotate會定時讀取該文件,根據設置按日誌大小或天數刪除/歸檔舊日誌,建立新日誌.
- v2 M7 A  G* s* g! `: `; r0 O. w% p  {) y# z

9 @) P: [5 L! G, N9 P3 ~2 P配置說明:
+ X+ _$ d2 ?# hdaily:日誌文件每天進行滾動
6 ~% |1 b# _( Vmissingok:如果找不到這個log檔案,就忽略過去 & ]4 P' r; q3 {: Z( P
rotate:保留最近52次滾動的日誌
8 c' t) V- J( @/ J  ]6 |compress:透過gzip壓縮轉儲以後的日誌 / [, O" X) q  J* I) x1 g/ Y
delaycompress:和compress一起使用時,轉儲的日誌文件到下一次轉儲時才壓縮
6 d5 _; M' M  }9 Q/ B/ Fnotifempty如果是空文件的話,不轉儲 % D' x6 X; K" \4 U2 H! _9 G
create mode owner group:轉儲文件,使用指定的文件模式建立新的日誌文件
' h. L( {; n  ~sharedscripts:運行postrotate腳本(該腳本作用為讓nginx重新生成日誌文件)
; w3 O( {- f& R5 j! t" O3 |0 c; _9 upostrotate/endscript:在轉儲以後需要執行的命令可以放入這個敘述對據裏,這兩個關鍵字必須單獨成行
0 y3 V0 x: n8 d- Y( t2 w; |1 d3 Z$ ~4 ~* S3 P1 l! W) U& {' M% B/ E
logrotate預設被加入到cron的/etc/cron.daily中作為每日任務執行,配置定義在: * }+ \5 ?( G8 R; C
/etc/cron.daily/logrotate

+ h) g, ^% O# z# |4 M( [/ K1 X* V0 W9 l
, F0 }! \- Q8 i+ o' f. f" c
要測試寫好的設定檔可以用以下命令:5 X2 q9 c8 D8 z; Z* |* S* J0 e
sudo logrotate -vf /etc/logrotate.d/your-conf-file
  T9 |, A" A: @* t1 x. R
, z+ w4 J' @& G
) J! z* E; q# ~8 s

9 q  D4 {# P2 S註:
# l) X2 F' U5 U( [& _  a: u' c參考:  https://blog.toright.com/posts/4 ... AD%B8%E6%AA%94.html+ X% M; R5 q1 H6 Q' [- i" b9 @

4 D# O% d/ J6 s- {# J' r# B9 D: @
回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則



中文酷站排行榜

本區塊內容依據『電腦網路內容分級處理辦法』為限制級網站,限定年滿18歲以上或達當地國家法定年齡人士方可進入,且願接受本站各項條款,未滿18歲 謝絕進入瀏覽。為防範未滿18歲之未成年網友瀏覽網路上限制級內容的圖文資訊,建議您可進行網路內容分級組織ICRA分級服務的安裝與設定。 (為還給愛護 本站的網友一個純淨的論壇環境,本站設有管理員)

QQ|小黑屋|手機板| 52AV手機A片王

GMT+8, 2026-3-23 22:21 , Processed in 0.059417 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回復 返回頂部 返回列表