Nginx列印json日誌

2022-03-29 08:37:52 字數 1177 閱讀 4686

1.修改配置,在http{}中新增

2.重啟

systemctl restart nginx
或者

nginx -s reload
3.訪問,輸出日誌

日誌中變數的含義

log_format access_json '';
比如

參考

引數含義

1.訪問時間 ts

2.訪問埠 server_addr

3.請求方式(get或者post等)request

4.使用者瀏覽器語言。如:上例中的 "es-es,es;q=0.8" http_accept_language

5.使用者瀏覽器其他資訊,瀏覽器版本、瀏覽器型別等 http_user_agent

6.客戶端(使用者)ip位址 remote_addr

7.傳送給客戶端的檔案主體內容的大小 body_bytes_sent

8.整個請求的總時間 request_time

9.請求的長度(包括請求行,請求頭和請求正文)request_length

10.請求的url位址(目標url位址)的host http_host

11.請求url位址(去除host部分) uri

12.host 與 http_host的區別在於當使用非80/443埠的時候,http_host = host:port host

13.客戶端的真實ip,通常web伺服器放在反向**的後面,這樣就不能獲取到客戶的ip位址了,通 過$remote_add拿到的ip位址是反向**伺服器的ip位址。反向**伺服器在**請求的http頭資訊中,可以增加 x_forwarded_for資訊,用以記錄原有客戶端的ip位址和原來客戶端的請求的伺服器位址  http_x_forwarded_for

14.記錄從哪個頁面鏈結訪問過來的(請求頭referer的內容)http_referer

15.請求狀態(狀態碼,200表示成功)  status

Nginx 日誌改成 JSON 格式

nginx 日誌預設為普通文字的格式,例如,下面是 nginx 的一行訪問日誌 為了便於利用 elastic stack 日誌平台收集展示 nginx 的日誌,可以將 nginx 的日誌改成 json 的格式。修改後的 json 日誌格式如下所示 為了修改 nginx 的日誌格式改成 json,需要...

nginx日誌輸出配置json格式

修改nginx配置檔案 access log logs access.log log json 引用日誌格式名稱 省略內容 在 nginx 的配置檔案nginx.conf中,我們定義了兩種的日誌格式 main和log json,其中,main為普通的文字格式,log json為 json 格式。lo...

nginx1 14 0日誌列印

nginx日誌列印 http屬性log format來設定日誌格式 參考 nginx日誌配置指令詳解 log format myformat remote addr remote user time local request status body bytes sent http referer ...