1

私はslf4jを使用しています。このようなログ ステートメントがたくさんあります。

LOG.debug("I like {} and {}", new Object[] { "foo", "bar" });

このログ ステートメントが実行されると、次のようなログが取得されます。

I like foo and bar

予想通り。ただし、ログ パーサーがはるかに簡単になるように、ログ メッセージのパラメーターに追加の書式を設定したいと考えています。文字通り次のような目的のログ メッセージ。

I like [foo] and [bar]

もちろん、リテラル ログ ステートメントを に更新することもできますI like [{}] and [{}]が、これは多くの変更であり、ログ ステートメントが不必要に乱雑に見え、将来的にはあまり柔軟ではありません。

slf4jを維持しながら、誰かがより迅速な解決策を提案できますか? 私が使用している実装は、logback-classic を使用して実際のログ処理を行います。

ありがとう!

4

1 に答える 1

1

Logback を使用している場合は、おそらくカスタムのアペンダー/エンコーダー/レイアウト/コンバーターを構築できます。Logback では、Appenders は LoggingEvent を取り込んでいます。これは通常、メッセージを構築するためにレイアウトにデリゲートするエンコーダーにデリゲートします。ソースコードを見て、カスタム処理を行うのに最適な場所を確認してください。

于 2013-03-26T05:15:33.997 に答える