私はlog4jファイルによって生成されたログファイル用の何らかのアナライザーツールを探しています。私はそれよりも高度なものを探しています。グレップ? ログファイル分析に何を使用していますか?
次のような機能を探しています:
- ツールは、特定のログ ステートメントまたはスタック トレースが何回発生したかを通知する必要があります。できれば、いくつかの種類のパターン (例: 'User [az]* logged in' に一致するログ ステートメントの数) をサポートする必要があります。
- ログ レベル (INFO、DEBUG 行の数) 別、およびログ メッセージを開始したクラス別の内訳があると便利です。
- 日付別の内訳(指定された期間内のログ ステートメントの数)
- 一般的に一緒に発生するログ ラインは何ですか?
- ログローリングを使用しているため、複数のファイルをサポート
- ホットスポット分析: ログステートメントの数が異常に多い期間があるかどうかを確認します。
- コマンドラインでもGUIでもどちらでも構いません
- オープンソースが望ましいですが、商用製品にも興味があります
私の log4j 構成では、パターン付きの org.apache.log4j.PatternLayout を使用しています%d %p %c - %m%n
が、これはアナライザー ツールに適合させることができます。
ベストアンサー1
(免責事項: 私は Chainsaw V2 に貢献している開発者の 1 人です)
チェーンソー V2カスタム式のサポートと、それらの式を使用してイベントの色付け、検索、フィルタリングを行う機能を通じて、必要な機能の一部を提供できます。
Chainsaw に複数のログ ファイルを読み込むことができます (デフォルトでは、ログ ファイルのすべてのイベントは、ログ ファイル固有のタブに配置されます)。また、すべてのタブのイベントを、指定した式に一致する新しいタブに集約する「カスタム式ログパネル」を定義することもできます。データベースの「ビュー」と同様に、「LEVEL >= WARN」という式を使用して、任意のログ ファイルからすべての警告、エラー、および致命的なメッセージを 1 つのビューに収集できます。
イベントの色付け、検索、フィルタリングに使用できる式の例をいくつか示します。
- 「ユーザー [az]* がログインしました」のようなメッセージ
- メッセージ ~= ログイン || メッセージ ~= ログアウト
- レベル > 情報
- 例外が存在する
- タイムスタンプ <= '2010/04/06 15:05:35'
現在、「カウント」を取得する唯一の方法は、「フォーカスを絞り込む」フィールドで式を定義することです (式に一致するイベントの数がステータス バーに表示されます)。
今後のリリースに追加される便利な機能の 1 つは、テーブルの右側にあるクリック可能なバー (構文エラーを示す Eclipse や Idea のバーに似ています) で、ログ ファイル全体のカラー ルールと検索式の一致が表示されます。
Chainsaw V2 の次のバージョンがリリースされたら、ぜひ試してみてください。これはオープン ソースで無料であり、私たちは常に提案やフィードバックをお待ちしています。