static アダプターの Java クラスの作成
static ログ・パーサーを作成する場合は、
アダプター構成ファイルの抽出、パーサー、フォーマッターの各コンポーネントの代わりに Java クラスを使用します。
static パーサー・クラスは、インターフェース org.eclipse.hyades.logging.parser.IParser を実装
する必要があります。 これを行うには、抽象クラス org.eclipse.hyades.logging.parser.Parser または
org.eclipse.hyades.logging.parser.MonitoringParser のいずれかを拡張します。
Parser クラスの拡張
このクラスを使用する必要があるのは、static パーサーを作成して、更新されなくなったログ・ファイル
を構文解析するか、コンテキストの実行中にログ・ファイルを 1 回構文解析する場合です。
このクラスを使用する場合は、「連続稼働」チェック・ボックスの選択を
解除してコンテキスト・インスタンスを構成する必要があります。
- import 文 import org.eclipse.hyades.logging.parsers.Parser; を追加します。
- 次のメソッドをクラスに追加します。
- public void setConfiguration(Hashtable)
このメソッドは、汎用ログ・アダプターによって呼び出され、
「ログ・ファイルのインポート」ウィザードでユーザーが指定した static パーサー・クラス、
またはアダプター構成ファイルに用意されている static パーサー・クラスに構成情報を提供します。
- public void preParse()
これは、接続の確立などの初期化作業が実行される場所です (該当する場合)。
- pubic void parser(Log)
このメソッドの実装は必要ありません。
これは org.eclipse.hyades.logging.parsers.Parser から継承することができます。
- public ICommonBaseEvent[] parseNext()
このメソッドは、
レコード・セットを構文解析してそのレコード・セット内のデータを表す共通ベース・イベント・オブジェクトの配列を戻すなど、
ログ・ファイルの解析ロジックの大半を実行します。
- public void postParse()
このメソッドでは、クリーンアップ・タスクが実行されます。
注: protected メソッド Parser.readALine() を、ログ・ファイルからのデータの
読み取りに使用することができます。このメソッドは、ログ・ファイルから行を読み取り、
ファイルの読み取り中にエラーが発生すると例外をスローします。例外には、読み取りが失敗した
理由が含まれます。エラーが発生するとヌルを戻す既存の readLine() メソッドは、
このリリースで推奨されなくなりました。
MonitoringParser クラスの拡張
このクラスを使用する必要があるのは、ログ・ファイルを継続してモニターできる static パーサー
を作成する場合です。注: このクラスを使用すると、モニターが開始されたときにログ・ファイルが
存在しない場合でもログ・ファイルをモニターできます。
抽象クラス org.eclipse.hyades.logging.parser.MonitoringParser を拡張する必要があります。
このクラスは Parser クラスを拡張します。Parser クラスの説明と同じようにメソッド
を実装しますが、以下のことに注意してください。
- import 文 import org.eclipse.hyades.logging.parser.MonitoringParser を追加します。
- 次の Parser メソッドをオーバーライドする場合、オーバーライドするメソッドによってスーパー・クラス
の対応するメソッドが呼び出されるようにしてください。
- setConfiguration()
- readALine()
- postParse()
- 戻すべき構文解析されたレコードがこれ以上無いことを
示すために parseNext() メソッドがヌルを戻す前に、そのメソッドに setEndOfFile() への
呼び出しを追加します。
これにより、次回 readALine() を呼び出したときに、ログ・ファイルが調べられるようになり、
ファイルが変更されたかどうか、および構文解析すべき新規レコードがあるかどうかが確認されます。
- static パーサーが、ログ・ファイルを簡単に構文解析できるフォーマットに変換するコマンド、
またはログ・ファイルを生成するためのコマンドを必要とする場合、setConfiguration() を呼び出した
後、setConverterCommand(String) または setConverterCommand(String[]) のいずれかの
メソッドを使用して、static パーサーを MonitoringParser クラスに指定する必要があります。
コマンドが、setConfiguration() の構成パラメーターで指定されたものと異なる名前のファイル
にログ・データを書き込む場合、setFilename(String) メソッドを使用して、新規ログ・ファイル名
を MonitoringParser クラスに指定する必要があります。
注:
- org.eclipse.hyades.logging.parsers プラグインは、
org.eclipse.hyades.logging.adapter プラグインに対する依存関係をもつようになりました。
- readALine() メソッドを除いて、MonitoringParser クラスは、
ログ・ファイルへ直接アクセスすることはできません。Parser クラスの logFile メンバー
を使用して現在ログ・ファイルから直接データを読み取っている static パーサーは、readALine() メソッド
を使用するように変更する必要があります。
Java パーサー・クラスの作成およびテストが終わったら、
このクラスを参照するようにアダプター構成ファイルのセンサー・コンポーネントを構成することができます。
.
関連概念
Hyades 汎用ログ・アダプターの概説
共通ベース・イベント・フォーマットの仕様
関連タスク
ログ・パーサーの作成
static アダプターの作成
センサー・コンポーネントの構成
関連参照
アダプター構成ファイルの構造
アダプター構成エディター
正規表現グラマー
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.