Access Log Analyzer
Nginx / Apache のアクセスログを集計:上位 IP、パス、ステータス、時間帯トラフィック。
レポート
結果がここに表示されます。
書式に一致しない行は黙って捨てず、件数を数えてサンプルを表示します。
使い方
- アクセスログを 1 行 1 リクエストで貼り付けます。自動モードなら combined(referer と UA 付き)と common の両方を受け付けます。
- 厳密に合わせたいときはログ形式を明示し、上位 N 件でランキングの長さを指定します。
- Analyze を押すと、入力欄の下にプレーンテキストのレポートが出ます。
- セクション順に読みます。合計、上位 IP、上位パス、ステータス分類、ステータスコード、時間帯別バイト数。
- Copy か Download でチケットやチャットにそのまま貼り付けられます。
よくある用途
- うるさいクライアントの特定 —— 大量の行が短いランキングにまとまります。
- 障害時間帯の確認 —— 時間帯別バイト数で、トラフィックが跳ねた/落ち込んだ時刻が分かります。
- エラー率の確認 —— grep のパイプラインを組まずに 4xx と 5xx の割合が出ます。
- ログ書式変更の検証 —— 解析できない行は件数とサンプルが出るため、書式の破損にすぐ気づけます。
- シェル権限なしでのログ確認 —— 共有端末からコピーした一部を貼り付けるだけで同じ数値が得られます。
よくある質問
Q: データはアップロードされますか? A: いいえ。アクセスログにはクライアント IP、内部パス、クエリ文字列内のセッション識別子、UA が含まれます。解析はページ内の正規表現だけで完結し、リクエストは一切発生しません。本番ログもここで解析できます。
Q: どの行形式に対応していますか? A: リモートアドレス、ident、ユーザー、角括弧のタイムスタンプ、引用符付きリクエスト、ステータス、バイト数、referer、UA を持つ combined 形式と、最後の 2 つの引用符フィールドがない common 形式です。JSON ログのような独自形式は解析不可として数えられます。
Q: 解析不可となる行があるのはなぜ? A: 正規表現は角括弧のタイムスタンプと引用符付きリクエストを要求します。モジュールが追加した余分なフィールドや、エスケープされていない引用符を含むリクエストは一致しません。レポートに最初の数行を出すので、そこから調整できます。
Q: パス集計にクエリ文字列は含まれますか? A: 含まれません。パスはクエスチョンマークで切り詰めるため、/search?q=a と /search?q=b は同じパスとして数えられます。ランキングでは通常こちらが望ましい挙動です。
Q: ホスト名の解決や IP の所属検索はしますか? A: いいえ。それらはネットワークリクエストを伴うため行いません。アドレスはログに書かれたまま表示されます。
データはこのデバイス内にとどまります
Access Log Analyzer は 100% ローカルで動作します。貼り付けたり、ドロップしたデータはすべてお使いのブラウザ内で処理され、送信されることはありません。当社のサーバーには何も保存されません——タブを閉じればすべて消えます。
入力された内容がサーバーへ送信・記録・解析利用されることはありません。初回読み込み後はネットワークを切断していてもこのページは動作します。