Apcoordinator ユーザーズガイド |
目次
![]() ![]() |
第2部 Apcoordinatorコアの機能 | > 第5章 アプリケーションログ | > 5.6 高信頼性ログ |
ユーザ独自のメソッドを定義し、ログ本文の編集を行ってprintlnメソッドを呼び出し、ログを出力するULogComposer派生クラスの作成例を以下に示します。
/** * ログ本文の編集を行う派生クラスの作成例です。 * この例では、基底クラスに ULogComposerを用いています。 */ package my.sample; import com.fujitsu.uji.ulog.ULogComposer; import com.fujitsu.uji.ulog.ULogException; public class MyULogComposer extends ULogComposer { public MyULogComposer() { } public void println(Object[] div, Object[] exp, Object msg) throws ULogException { // ログ本文の編集を行います。 StringBuffer buf = new StringBuffer(); buf.append(" PREFIX TEXT "); buf.append( String.valueOf(msg) ); // 編集後に、基底クラスのメソッドを呼び出します。 super.println(div, exp, buf.toString()); } }
/** * ログ本文の編集を行う派生クラスの作成例です。 * この例では、基底クラスに ULogComposerを用いています。 */ package my.sample; import com.fujitsu.uji.ulog.ULogComposer; import com.fujitsu.uji.ulog.ULogException; public class MyULogComposer2 extends ULogComposer { public MyULogComposer2() { } public void myPrintln(Object[] div, Object[] exp, Object msg1, Object msg2) throws ULogException { // ログ本文の編集を行います。 StringBuffer buf = new StringBuffer(); buf.append( String.valueOf(msg1) ); buf.append( "," ); buf.append( String.valueOf(msg2) ); // 編集後に、基底クラスのメソッドを呼び出します。 println(div, exp, buf.toString()); } }
作成した派生クラスをログ定義ファイルに指定する定義例を以下に示します。
ULogComposer派生クラスを作成する場合は、デフォルトコンストラクタを定義してください。
<logConfig> .... <!-- 作成した派生クラスを指定 --> <ulog name="ULog1" class="my.sample.MyULogComposer"> <param name="schema" value="MYSCHEMA"/> <param name="table" value="ULOG01"/> </ulog> <ulog name="ULog2" class="my.sample.MyULogComposer2"> <param name="schema" value="MYSCHEMA"/> <param name="table" value="ULOG02"/> </ulog> .... </logConfig>
目次
![]() ![]() |