jvisualvmを使ってlog4j2 Mbeanにアクセスしている間、私はlog4j2パッケージ内のtype(contextName)が数字であることを確認してください(私にとっては1482868390です)。これは、クエリでObjectを指定している間は「type」として表示されるので、私が好みのもっとわかりやすい名前に指定したいと思います。 XML設定でcontextNameを設定する方法はありますか。 私はWebアプリケーションのためにそれをする方法があると思いますが、私はこれをスタンドアロンのJavaアプリケーションのために設定したいと思います。
回答:
回答№1は0はい、これは可能ですが、設定はできません。 Log4jのContextSelectorsの1つをサブクラス化し、それをオーバーライドすることでこれを達成できます。 defaultContextName()
方法。
次に、システムプロパティでアプリケーションを起動して、Log4jにContextSelectorを使用するように指示します。 -DLog4jContextSelector=com.yourpackage.YourContextSelector
.
すべてのロガーを非同期にする場合は、サブクラス化します。 AsyncLoggerContextSelector、 さもないと ClassLoaderContextSelector.