はじめに
手元でサクッとログファイルを解析したいことってありませんか?対象のファイルが数十メガくらいのうちは適当なエディタで問題ないですが、1ギガを超えた辺りからファイルを開くのにも苦労したり、すごく重かったりしてフラストレーションが溜まりますよね。
そこで今回はログ解析が捗るツール KLOGG を紹介します!
リンク先の Releases から各プラットフォーム向けのバイナリファイルがダウンロード出来ます。
ここ迄でこの記事で語りたいことの9割は語りましたが、時間のある人はもう少しだけお付き合いください😅
機能紹介
触ってもらえれば直感的に理解してもらえるとは思うのですが、せっかくなので主要機能を紹介していきます。
前提
ログファイル
下記のツールを使って Apache 形式のダミーログを用意しました。大きなログを作成するのに使用したのですが、継続的に書き込まれるようなログも再現できて非常に便利でした。
後続の画面ショットに IP が表示されている部分がありますが、実在の IP とは何ら関係はありません。
PC スペック
大きなファイルを扱ったり、処理速度なども見ていくので参考までに実行環境のスペックを記載しておきます。
- Windows 10 Enterprise (1909)
- Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz
- 16GB Memory
- SSD Storage
巨大ファイルオープン
手始めに5ギガのファイルを開いてみました。かかった時間は17~18秒といったところでしょうか。多少時間はかかりましたが、ファイルの大きさを考えると合格点ではないでしょうか。また、開いたあとは非常にキビキビ動きました。
次に10ギガのファイルを用意して試してみましたが、こちらも40秒くらいで開き、動作も軽快でした。さらに大きなファイルも扱えそうですが、このくらいのサイズが扱えれば現実的に困る場面は殆どないと思います。
検索速度
先程開いた5ギガのファイルに対して検索を実行してみましたが、かかった時間は17~18秒で、ファイルを開くのにかかった時間とほぼ同じでした。他のファイルサイズも同様の傾向で、1ギガ程度のファイルであれば3秒もあれば検索が終わりました。速い!!
また、検索にヒットした箇所はログウィンドウ右のスペースに赤いバーで表示されるので、出現位置が一目瞭然です。例えば特定の時間帯からエラーが出始めたような場合も、これを見れば何時からエラーが発生したがすぐに分かります。
検索範囲指定
ログの解析が進んでくると、ある程度怪しい箇所が特定できてくると思います。そういった場合、毎回大きなファイル全体に対して検索をかけるのは非効率なので、検索範囲を絞ることが出来ます。
ログウィンドウで検索開始位置としたい行を選択し、右クリックから「Set search start」を選び、検索終了位置では「Set search end」を選ぶだけです。
多段検索
Ctrl + F
キーを押すと多段検索用のフィールドが画面最下部に表示されます。残念ながら正規表現は使えませんが、検索結果をさらに絞り込むのに有効です(ログ部分にもヒットします)。
マーキング
気になった行をマーキングすることが出来ます。マーキングをすると、結果ウィンドウに対象行が表示されるので、検索でヒットした行と並べて確認することが出来ます。
ハイライト
事前に定義を作成し、適用することでログ及び結果ウィンドウをハイライトすることが出来ます。例えば GET メソッドを青、POST メソッドを赤で表示するように定義した場合、下図のように色分け表示してくれます。
書き込み中ファイルのオープン
書き込み中ファイルを開くだけで差分を読み込み続けてくれます。画面上部のアイコンをクリックして「Follow File」を有効にすると tail -f
のようにログの終端を追いかけてくれます。
結果の保存
解析を行って抽出したログを保存したいときがありますよね。そんなときは結果ウィンドウで右クリックして「Save to file」すれば OK です!
まとめ
私自身これまでログ解析用途で様々なエディタを試してきましたが、最終的に KLOGG に落ち着きました。巨大ファイル対応、高速、無料と三拍子揃っていて非常に強力なツールなのですが、知名度が今ひとつで Qiita にも記事がなかったので紹介記事を書いてみました。
ログ解析の心強いお供として活用して頂けたら嬉しいです!