nginx根據日期記錄日誌

  • 2019 年 12 月 18 日
  • 筆記

在ngixn.cnf中當前項目server模組中加入以下配置程式碼:

if ($time_iso8601 ~ "(d{4})-(d{2})-(d{2})") {

set $time $1$2$3;

}

access_log  /usr/local/lnmp/nginx-1.10/logs/${server_name}/${time}.alog combined ;

說明:

if判斷中進行正則匹配,匹配完成後根據小括弧()將匹配成功的字元設置為$1,$2,$3等等,此次匹配的結果為年月日。

set $time $1$2$3這句戶表示在配置文件中設置一個變數time,賦值為$1$2$3即年月日。

access_log  /usr/local/lnmp/nginx-1.10/logs/{$server_name}/${time}.alog combined ;

本句的意思是開啟log,並將日誌寫入/usr/local/lnmp/nginx-1.10/logs/{$server_name}/${time}.alog文件中,$server_name為當前server_name,$time為前文年月日,combined表示使用默認日誌格式進行記錄。

Tags: