ロギングを行うために Logback フレームワーク v1.0.1 を使用しています。ログ メッセージを Java の出力ストリームに追加する方法を知りたいです。
ログ メッセージをキー = 値のペアにフォーマットしたかった 最後に、フォーマットされたログ メッセージを出力ストリームとして取得したいと考えています。ロガー インスタンスを取得し、メッセージをデバッグ レベルでログに記録しました。
ch.qos.logback.classic.Logger logger = (ch.qos.logback.classic.Logger) LoggerFactory.getLogger("SplunkSearch.SplunkLogger");
logger.info( "wrap = true, setValue = false,");
logger.debug( "wrap = true, setValue = false,");
The logback.xml configuration file is as follows :
<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="true">
<timestamp key="bySecond" datePattern="yyyyMMdd'T'HHmmss" timeReference="contextBirth"/>
<contextName>splunksearchcontext</contextName>
<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
<Target>System.out</Target>
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<appender name= "outputstream" class="ch.qos.logback.core.OutputStreamAppender">
<encoder>
<pattern></pattern>
</encoder>
</appender>
<root level="debug">
<appender-ref ref="stdout"/>
<appender-ref ref="outputstream" />
</root>
</configuration>
実行すると、出力は次のようになります。
一種のエラーであるステータス メッセージにこの行が表示されました。出力ストリームが設定されていません。
15:07:19,399 |-ch.qos.logback.core.OutputStreamAppender[outputstream] のエラー - 「outputstream
」という名前のアペンダーに出力ストリームが設定されていません。
15:07:19.414 [メイン] INFO SplunkSearch.SplunkLogger - ラップ = true、setValue = false、
15:07:19.430 [メイン] DEBUG SplunkSearch.SplunkLogger - ラップ = true、setValue = false、