Thanks to visit codestin.com
Credit goes to scenario-test-framework.github.io

OPEN SOURCE CLI · GO

必要なログだけ 瞬時に

大容量ログから、期間・レベル・文字列・正規表現で必要なイベントを抽出。スタックトレースもひとつのイベントとして保持します。

配布形式
単一バイナリ
イベント
マルチライン対応
文字コード
UTF-8 / Shift_JIS
大量のログから条件に合うイベントを抽出する logfilter の実行例
FILTER PREVIEW
$ logfilter -l 'WARN,ERROR' app.log filtered.log

 ログレベル: WARN, ERROR
 出力: filtered.log

01 / VALUE

ログ調査のノイズを、判断できる情報に。

巨大なファイルをエディタで開き、検索を繰り返し、スタックトレースを手作業で追う必要はありません。logfilter はイベントのまとまりを保ったまま、調査に必要な部分だけを小さなファイルへ切り出します。

02 / FEATURES

調査に必要な機能を、ひとつのCLIに。

複数の条件は AND で組み合わせられます。広いログから、調べたい事象へ段階的に絞り込めます。

01

期間で切り出す

開始・終了時刻を指定し、障害発生前後のログだけを抽出。From は含み、To は含まない明確な境界です。

-tf '12:00' -tt '12:30'
02

レベルで絞る

WARN、ERROR、FATAL など、必要なログレベルだけをまとめて指定できます。

-l 'WARN,ERROR'
03

内容を探す

固定文字列の部分一致で、例外名やユーザーIDなどをイベント全体から検索します。

-s 'Exception'
04

パターンで抽出する

RE2 正規表現で複数の文言やパターンをまとめて指定。安全で予測可能な検索を実行できます。

-r 'ERROR|Exception'

03 / WORKFLOW

準備して、絞って、確認する

いつものログ調査を3ステップに。入力ファイルはそのまま、結果だけを別ファイルで受け取れます。

  1. 01

    ログを用意

    Apache access log、またはタイムスタンプで始まるアプリケーションログを指定します。

    ./app.log
  2. 02

    条件を指定

    期間、レベル、文字列、正規表現を、調査したい事象に合わせて組み合わせます。

    -l 'WARN,ERROR'
  3. 03

    結果を確認

    マッチしたイベントと、そのスタックトレースを含む継続行が出力されます。

    ./filtered.log

04 / COMPATIBILITY

現場のログを、そのまま扱う。

一般的なタイムスタンプ形式と、日本語環境で使われる文字コードに対応。変換作業を挟まず調査を始められます。

対応形式を詳しく見る →
ログ形式Apache access logTimestamp + level + message
文字コードUTF-8 · Shift_JIS · EUC-JPISO-2022-JP · UTF-16
実行環境Linux · macOS · WindowsDocker · amd64 · arm64

05 / INSTALL

すぐに始める。

Go、GitHub Releases、Docker。環境に合う方法を選べます。

GO
go install github.com/scenario-test-framework/logfilter@latest
DOCKER
docker pull ghcr.io/scenario-test-framework/logfilter:latest