2017-05-25 160 views
0

我想保留lsat 30天的nginx日誌。 默認配置爲15天,如圖所示。 enter image description here保留最近30天的nginx日誌

我想保留過去的30天。

下面是nginx的的looging設置:

## 
    # Logging Settings 
    ## 

    access_log /var/log/nginx/access.log; 
    error_log /var/log/nginx/error.log; 

但它並沒有說明「怎麼經常」應該採取什麼。

我不是一個nginx專家,所以我不知道如何/在哪裏可以更改該配置。

也許有人需要這樣做,並想幫助我。

回答

1

要改變這種行爲,你必須改變nginx的logrotate文件。 此文件可能位於/etc/logrotate.d。 爲了實現你想要做的事情,把指令weeklyrotate 30放在對應於nginx的文件中。 之後,使用下面的命令來確保更改生效:

  • logrotate /etc/logrotate.d/nginx-config-file
+0

不錯!謝謝!!它非常完美! –

0

您可以設置logrotate的爲nginx的,這樣就可以保持30天以上按日誌你的要求!

/etc/logrotate.d/nginx 


/var/log/nginx/access_log { 
rotate 7 
size 5k 
dateext 
dateformat -%Y-%m-%d 
missingok 
compress 
sharedscripts 
postrotate 
    test -r /var/run/nginx.pid && kill -USR1 `cat /var/run/nginx.pid` 
endscript 
} 

相應地改變#rotate的值! 30,40等等......