004 Nginx日誌挖掘accessLog
日誌模版
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
實際記錄的日誌
192.168.56.1 - - [23/Dec/2020:23:13:04 +0800] "GET /app/img/ys.jpg HTTP/1.1" 403 555 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3823.400 QQBrowser/10.7.4307.400"
192.168.56.1 - - [23/Dec/2020:23:14:54 +0800] "GET /app/img/aa/a.png HTTP/1.1" 200 26578 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3823.400 QQBrowser/10.7.4307.400"
日誌解析
$remote_addr 192.168.56.1 對應客戶端IP地址
$remote_user - 對應遠端使用者,沒有遠端使用者,所以用-充填
[$time_local] [23/Dec/2020:23:13:04 +0800] 訪問時間
"$request" "GET /app/img/ys.jpg HTTP/1.1" 訪問HTTP資訊
$status 403 訪問的狀態碼
$body_bytes_sent 555 響應的body大小
$http_referer 站點來源 # 可以用於防盜鏈
$http_user_agent 客戶端資訊
$http_x_forwarded_for 使用者真實IP(代理時候),-/空
accessLog 分析常用命令
樣例檔案 ->
access_temp.log
# 檢視訪問最頻繁的前10個IP
# 列印第一個 | 排序 | 去重統計 | 倒敘排序 | 取前10條
awk '{print $1}' access_temp.log | sort -n | uniq -c | sort -rn | head -n 10
# 統計訪問最多的URL 前10
# 這裡面有token,正常需要把?後面切走,這裡先不管
cat access_temp.log | awk '{print $7}' | sort | uniq -c | sort -rn | head -n 10
介面效能
# 日誌 新增變數
$request_time 使用者請求響應總耗時
$upstream_response_time 從nginx到服務請求響應時間(排除掉nginx和使用者的時間)
cat xxx.log | awk '($NF >2){print $7}' | sort -n | uniq -c | sort -nr | head -5
$NF 表示最後一列
相關文章
- go fiber: 增加訪問日誌accesslogGo
- Logminer日誌挖掘
- 歸檔日誌挖掘
- DM8 日誌挖掘
- Nginx日誌配置Nginx
- nginx 清空日誌Nginx
- laravelS 記錄accesslog日誌,服務慢查詢預警Laravel
- 【REDO】Oracle 日誌挖掘,分析歸檔日誌線上日誌主要步驟Oracle
- logminer異機挖掘歸檔日誌
- Nginx日誌輪訓Nginx
- 瀚高資料庫日誌挖掘方法資料庫
- Nginx日誌格式設定Nginx
- nginx日誌分析工具goaccessNginxGo
- Nginx日誌配置詳解Nginx
- 按日期分割nginx日誌Nginx
- 自定義Nginx日誌格式Nginx
- 日誌服務之使用Nginx模式採集日誌Nginx模式
- 利用oracle的日誌挖掘實現回滾Oracle
- 使用goaccess統計nginx日誌GoNginx
- 如何定時切割nginx日誌?Nginx
- 基於事件日誌的流程挖掘簡介 - Chaudhuri事件
- 虎牙直播張波:掘金Nginx日誌Nginx
- nginx高階訪客日誌切割Nginx
- nginx1.24配置logrotate日誌切割Nginxlogrotate
- nginx自帶的日誌日期分割Nginx
- ELK監控nginx日誌總結Nginx
- filebeat 收集nginx日誌輸出到kafkaNginxKafka
- nginx日誌按天最佳化Nginx
- nginx日誌配置檔案說明Nginx
- ELK日誌系統之使用Rsyslog快速方便的收集Nginx日誌Nginx
- 通過helm部署EFK收集應用日誌,ingress-nginx日誌解析。應用日誌Nginx
- IT小白也能輕鬆get日誌服務---使用Nginx模式採集日誌Nginx模式
- 一起分析Nginx 日誌及效能排查Nginx
- awk統計訪問nginx日誌次數Nginx
- 軟體工程日報004軟體工程
- 【Nginx】如何配置Nginx日誌?這是最全面的一篇了!!Nginx
- Linux下玩轉nginx系列(三)---nginx日誌配置檔案說明LinuxNginx
- Linux下使用GoAccess監控Nginx訪問日誌LinuxGoNginx