外部のLog4j設定を使用してマイクロサービスルートを実行する例
このセクションでは、外部のLog4j設定を使用してマイクロサービスルートを実行する方法の例を示します。
マイクロサービスは、cTimerおよびcLogコンポーネントを含む単純なルートからビルドされます。
cTimerコンポーネントは、メッセージ交換を5回トリガーします。
cLogコンポーネントはメッセージ交換をログに記録します。ログレベルはWARNに設定されています。これがTalend Studioのデフォルト設定です。
Talend Studioでルートを実行すると、以下の結果が実行コンソールに表示されます。
マイクロサービス.jarファイルへのルートをビルドしたら、コンソールウィンドウ内で実行できます。
- マイクロサービスをデフォルト設定で実行するには、次のコマンドを使用します。
java -jar demo_0.1.jar
次のログメッセージが表示されます。これはTalend Studioでの実行結果と同じです。
- Log4jのカスタム設定でマイクロサービスを実行する場合は、spring.config.additional-locationプロパティを使って、外部の設定フォルダーにあるlog4j.xmlファイルを呼び出します。マイクロサービスjarのディレクトリーにあるconfigフォルダーのサンプルLog4j設定は以下のとおりです。これは、マイクロサービスの開始時にtesb.logファイルを提供します。
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> <appender name="stdout" class="org.apache.log4j.ConsoleAppender"> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%d | %-5.5p | %-16.16t | %-32.32C %4L | %m%n"/> </layout> </appender> <appender name="rollingFile" class="org.apache.log4j.RollingFileAppender"> <param name="file" value="tesb.log"/> <param name="MaxFileSize" value="1024KB"/> <param name="MaxBackupIndex" value="10"/> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%d | %-5.5p | %-16.16t | %-32.32C %4L | %m%n"/> </layout> </appender> <root> <priority value="info"/> <appender-ref ref="stdout"/> <appender-ref ref="rollingFile"/> </root> </log4j:configuration>
この設定を使用するには、次のコマンドを実行します。
java -jar demo_0.1.jar --spring.config.additional-location=./config
または、logging.configプロパティを使用してLog4j設定ファイルを呼び出すこともできます。
java -jar demo_0.1.jar --logging.config=./config/log4j.xml
次のログメッセージが表示され、マイクロサービスjarファイルのあるディレクトリー内のtesb.logファイルに書き込まれます。
tesb.logファイルが作成されます。
ログメッセージはtesb.logファイルに書き込まれます。