Linux

探勘巨大的壓縮日誌文件

  • April 23, 2016

有時我需要探勘巨大的日誌文件(解壓後的幾個 GB)來調試特定的錯誤。

現在,vim 可以瀏覽文件,但是當我需要在文件中查找某些內容時,它完全沒用。是否有一些工具可以索引日誌並讓我更快地搜尋文件?

理想情況下是命令行工具。

編輯:只是為了澄清,喜歡ackgrep不適合的工具,因為我需要檢查匹配的上下文,並且,-C還不夠好。另外,仍然慢得無法使用。-A``-B``ack``grep

確實有比命令行工具級別大一點的日誌索引器。在商業上,splunk是最大的並且難以被擊敗。Graylog2是一個不錯的開源實現。Elasticsearch+Logstash 也很不錯。

將它們設置為收集和執行收集伺服器都有相當多的成本,但是一旦您將中央日誌收集作為系統的一部分,它們就很棒了。從多個來源查詢和報告日誌是多層應用程序的最大好處。

至於命令行,如果您可以將日誌記錄插入 syslog,則systemd journald實現允許在記錄項目時對多個欄位進行索引。不確定這在文本處理中是否有用,更多的是元數據。

不確定是否有任何臨時命令行工具,每次載入文件時它們仍然會有提取/載入/解析時間損失。

話雖less如此,我在單個日誌文件中需要的大部分內容。

&pattern  grep pattern
/pattern  search forward
?pattern  search backward
shift-f   tail -f

tail模式也可以考慮以前的模式,非常適合觀看實時日誌

引用自:https://unix.stackexchange.com/questions/66286