NGINX日誌配置總結

clipboard.png

前言

原本準備講解nginx和apache的日誌的,可是我的不太推薦apache(純屬我的愛好),這裏就不介紹apache的日誌了。nginx

做爲一名程序員,比碼代碼還重要那麼一點點的東西就是日誌的分析和查詢。下面列出常見日誌及設置方法。程序員

配置文件

nginx分access_log和error_log兩種日誌

設置須要在nginx.conf中,默認經過源碼包編譯安裝nginx目錄應在apache

/usr/local/nginx

目錄下,若是你經過yum或者其餘方式安裝,不清楚或不知道nginx具體安裝目錄,能夠使用vim

find / -name nginx.conf

or瀏覽器

nginx -V | grep prefix
-------------
nginx version: nginx/1.13.9
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC)
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --with-http_ssl_module

開啓訪問日誌

若是是你源碼包默認安裝的,打開路徑以下app

vim /usr/local/nginx/nginx.conf

找到以下內容ui

http {
    include       mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  logs/access.log  main;
    
    ...
}

將log_format到access_log的註釋打開便可,log_format可定義nginx的日誌規格。spa

log_format默認規格參數表

名稱 註解
$remote_addr 客戶端/用戶的IP地址
$time_local 訪問時間
$request 請求方式 + 請求地址
$status 請求狀態碼 與HTTP狀態碼一致
$body_bytes_sent 請求的地址大小 以bytes格式計算
$http_referer 請求來源,從什麼地方訪問的
$http_user_agent 用戶信息(瀏覽器信息)
$http_x_forwarded_for 轉發IP地址

開啓錯誤日誌

若是是你源碼包默認安裝的,打開路徑以下日誌

vim /usr/local/nginx/nginx.conf

找到以下內容code

error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

將註解刪除便可,你能夠將不一樣的錯誤類型分開存儲如

error_log logs/error.log notice;

notice既爲錯誤類型,不寫則是所有。

致謝

感謝你看到這裏,日誌操做與分析的相關文章後面我還會寫一些,但願能夠幫助到你。謝謝

代碼多變,初心不變

相關文章
相關標籤/搜索