2017-10-10 3 views
1

log4jのログファイル名にマシン名を追加する方法はありますか?log4jを使ってログファイル名にマシン名を追加する方法は?

これは私の状況です:Weblogicを実行する4台のマシン/サーバーがあり、各マシン/サーバーはJVMアプリケーションの2インスタンス/ノード(ベンダーから提供されます)を実行しています。このアプリケーションはlog4jを使用してログを生成します。ログファイル名はすべてのマシン/サーバで同じです。トラブルシューティングのためにログを確認したり収集したりする必要がある場合は、問題が発生します。

私はすでに次を使用してそれらの間のインスタンス/ノードを識別することができました - weblogic.Nameプロパティ:

<appender name="DFe" class="org.apache.log4j.RollingFileAppender"> 
<param name="File" value="servers/${weblogic.Name}/logs/dfe_${weblogic.Name}.log"/> 

は今、私は同様のマシン/サーバ名でログファイル名を区別する必要があります。どうやってするか? weblogic.Machineのプロパティなどはありますか?

例:マシン/サーバー名は「ausplsynapp03」、インスタンス/ノード名は「track60800-01」および「track60800-02」です。私のログファイル名は "dfe_ausplsynapp03_track60800-01.log"と "dfe_ausplsynapp03_track60800-02.log"になります。

ご協力いただきありがとうございます。

答えて

0

ファイル名またはアペンダパターンに${weblogic.Name}を指定すると、WebLogic JVMの引数から実際に値が使用されます。

JMV引数にカスタム引数を追加できる場合は、ログを記録するために使用できます。

その他のWebLogicの引数については、https://docs.oracle.com/cd/E13222_01/wls/docs90/admin_ref/weblogicServer.htmlweblogic.Domainなどがあります。

ログメッセージにホストを有するOKであれば、あなたはそれがx%X{key}を使用してメッセージをログに記録するMDC/NDC属性および出力を設定することができます(https://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PatternLayout.htmlを参照)

+0

おかげでそれを使用し、先端アルンため –

0

は するSystem.setProperty以下のような環境プロパティを設定しよう( "serverHostName"、InetAddress.getLocalHost()。getHostName());

は、=

のparamの名前=」ファイル」値以下としてあなたのlog4j.xml に先端ALEHための」$ {serverHostName} .logの」

+0

感謝 –

関連する問題