Log-Files
如何使用 grep 查找日誌文件中最常出現的錯誤?
我有一個 PHP 應用程序,它在日誌文件中生成大量警告和通知。
我正在一次修復這些。
我希望能夠首先修復最頻繁發生的問題,以最大限度地提高我的更改對日誌文件大小的影響。
如何使用 grep/sed/regex 等找出最常見的通知?
由於時間戳在開頭,我無法比較整行,但也許是“線上… ”的列表/分組/排序?
這個怎麼樣?
grep 'on line' /var/log/httpd/error_log | cut -d' ' -f6- | sort | uniq -c | sort -nr
是的
- 從日誌文件中獲取正確的行
- 把前面的日期剪掉
- 對它們進行排序
- 匯總併計算重複項
- 按重複次數排序
我認為這更簡潔,因此您確實可以避免“剪切”。
grep -o 'on line [[:digit:]]*' /var/log/nginx/error.log | sort | uniq -c | sort -nr