1

log4j2を使用してマップルックアップ(またはその他のルックアップ)を作成する方法について、これら3つのサイトを調べてきました。

私が読んでいるものの背後にある一般的な考え方は理解していますが、すべての断片をまとめるのに苦労しています.

ゴール

何らかの変数を log4j2.xml ファイルに配置して、構成時または実行時に、その変数をリソース バンドルの値に置き換えることができるようにします。これは私がこれまでに持っているものです:

構成ファイル

ここに画像の説明を入力

ルックアップ クラス

ここに画像の説明を入力

getValue(key) メソッドは、そのキーに関連付けられた電子メール値のリソース バンドルを調べます。@Plugin 名は「マップ」です。これを正しく読んだ場合、.xml ファイル内のプレフィックスにも関連しており、これは「マップ」でもあります。 "。では、「error.notification.emails」は MapPropertiesLookup クラスの lookup(String key) メソッドに渡されませんか? これを機能させるにはどうすればよいですか?

4

2 に答える 2

3

次のリリース (ベータ版かリリース候補版か) の新しいルックアップを追加しました。

リビジョン 1531064 をコミットしました。

ソースから Log4J をビルドすれば、すぐに使用できます。サイトを構築する場合の形式は文書化されており、次のように使用されます。

${bundle:BundleName:BundleKey}

例えば:

${bundle:com.domain.Messages:MyKey}

java.util.ResourceBundle クラスは、クラスパスで com/domain/Messages.properties を探します。

JIRA の問題: https://issues.apache.org/jira/browse/LOG4J2-420

于 2013-10-10T18:15:57.643 に答える