ログ・パーサーのプラグイン・プロジェクトのデプロイ

前提条件

ログ・パーサーの成果物を収めるプラグイン・プロジェクトを作成したら、 ログおよびトレース・アナライザーが使用できるようにそのプラグインを構成する必要があります。 以下の手順を実行してください。

  1. プラグインのマニフェスト・ファイルにプラグイン依存関係を追加する
  2. プラグインのマニフェスト・ファイルにログ・パーサーの拡張ポイントを追加する
  3. 静的なラッパー・パーサー・クラスを作成する
  4. ログ・パーサー・プラグイン設定を検査する
  5. デプロイメントのためにログ・パーサー・プラグインをパッケージする
  6. ログ・パーサーをデプロイする

プラグイン依存関係を追加する

プラグイン・マニフェスト・ファイルに、以下のプラグイン依存関係を組み込む必要があります。 テキスト・エディターで plugin.xml ファイルを開き、runtime エレメントの後に以下の行を追加します。

   
<requires>
 <import plugin="org.eclipse.ui"/>
 <import plugin="org.eclipse.core.runtime.compatibility"/>
 <import plugin="org.eclipse.hyades.logging.adapter"/>
 <import plugin="org.eclipse.hyades.logging.parsers"/>
 <import plugin="org.eclipse.hyades.logging.adapter.config"/>
</requires>

ログ・パーサーの拡張ポイントを追加する

構文解析を行って、ログおよびトレース・アナライザーへインポートしたい それぞれのタイプのアプリケーション・ログ・ファイルごとに、拡張ポイントを定義する必要があります。 以下は、規則アダプターと static アダプターの両方を定義した、MyApp アプリケーションのサンプル拡張ポイントです。

 <extension
         point="org.eclipse.hyades.logging.parsers.logParser">
	      <parser
            name="Sample Rules Adapter for MyApp"
            icon=""
            description="%STR_MYAPP_PARSER_DESCRIPTION"
            class="RulesParser.StaticParserExtension"
            ui_name="MyApp myapp.log file"
            id="org.eclipse.hyades.logging.parsers.MyAppLogParser">
         <field
               useBrowse="true"
               defaultValue="d:¥temp¥sample.log"
               name="Directory"
               helpContextId=""
               tooltip="%STR_MYAPP_TOOLTIP1"
               id="file_path"
               browseType="*.log">
         </field>
         <field
               useBrowse="false"
               defaultValue="MyApp 1.0(rules), MyApp 1.0(static)"
               name="Supported versions"
               helpContextId=""
               tooltip="%STR_MYAPP_TOOLTIP2"
               ui_type="combobox"
               id="version">
         </field>
         <parserParameter
               name="MyApp 1.0(rules)"
               value="./MyAdapter/myadapter.adapter">
    </parserParameter>
	<parserParameter
               name="MyApp 1.0(static)"
               value="./MyAdapter/mystaticadapter.adapter">
         </parserParameter>

      </parser>
   </extension>

ログ・パーサーの拡張ポイントをカスタマイズするには、次の更新を行うことが必要です。

  1. この拡張ポイントの RulesParser を、ログ・パーサー・プラグイン・プロジェクト用に作成 したプラグインの名前で置き換えます。
  2. この拡張ポイントの MyAdapter を、ご使用のアダプター・ファイルを含むプラグインでの フォルダー名と置き換えます。
  3. <parser> タグではパーサーの上位情報を指定します。これは必須エレメントです。 以下の属性を置換します。
  4. 最初の <field> タグは、ログ・ファイルのロケーションを選択するための UI フィールドを定義します。 これは、必須エレメントです。 以下の属性を置換します。
  5. 2 番目の <field> タグは、インポートするログ・ファイルのバージョンを選択 するための UI コンボ・ボックスを定義します。 これは、必須エレメントです。 以下の属性を置換します。
  6. <parserParameter> タグは、サポートされるそれぞれのログ・ファイル・バージョンに、 どのアダプター構成ファイルを使用するかを定義します。 以下の属性を置換します。
ヒント: バージョンの一致が検出できない場合は、Default を定義する必要があります。 アダプター構成ファイルが 1 つしかない場合は、次のような Default parserParameter があるだけで済みます。
<parserParameter
   name="Default"
   value="./MyAdapter/myadapter.adapter">
</parserParameter>

上記に指定したフィールドにより、「ログのインポート (Import Log)」ウィザードに MyApp myapp.log 用のオプションが作成されます (以下の図を参照)。

myapp myapp.log がインポート・オプションとして表示されている「ログのインポート (Import Log)」ウィザード

plugin.properties ファイルを使用すると、異なるバージョンを持つ必要のある特定プロパティーを、plugin.xml ファイル内で定義することができます。 たとえば、「ログ・ファイルのインポート」ウィザードに組み込まれるテキスト・ストリングで、 別の言語に翻訳する必要があるものがある場合、それらのテキスト・ストリングを plugin.properties ファイルで定義することができ、またサポートしたい言語用の別のプロパティー・ファイル をインクルードすることができます。 plugin.xml ファイルで使用できる置換変数を、その plugin.properties ファイルで定義してください。 上記の plugin.xml に対する plugin.properties ファイルは以下のようになります。


# Properties for RulesParser Plugin

pluginName = RulesParser
providerName = MyCompany

# logParser extension point message(s):
STR_MYAPP_PARSER_DESCRIPTION = MyApp rules parser v1.0
STR_MYAPP_TOOLTIP1           = Enter the location of the log file
STR_MYAPP_TOOLTIP2           = Select the version of the log file to import

パーサーのラッパー・クラスを作成する

org.eclipse.hyades.logging.adapter.config.StaticParserWrapper を拡張する静的なラッパー・クラスを作成します。 このクラスは、static パーサーと規則ベース・パーサーの両方に使用します。 ログ・パーサー・プラグイン・プロジェクトでクラスを作成します。 RulesParser をご使用のログ・パーサー・プラグイン・プロジェクトの名前で置き換えて、 以下のサンプル・クラスを使用してください。

/*
 * Created on Apr 12, 2004
 * StaticParserExtension class created to be used in RulesParser Plug-in
 */
package RulesParser;

import org.eclipse.hyades.logging.adapter.config.StaticParserWrapper;

/**
 * @author developer
 * StaticParserExtension class
 */
public class StaticParserExtension extends StaticParserWrapper {
	public StaticParserExtension(){
		super();
		currentPlugin="RulesParser"; 
	}
}

ログ・パーサー・プラグイン設定を検査する

プラグイン・マニフェスト・ファイルを正しく構成したかどうかを検査するため、新規の ランタイム・ワークベンチでプラグイン・プロジェクトを実行することができます。 以下の手順を実行してください。

  1. 「ウィンドウ」>「パースペクティブを開く」>「その他」>「プラグイン開発」と選択して、 プラグイン・パースペクティブに切り替えます。
  2. 「プラグイン開発」パースペクティブから、ご使用のプラグイン・プロジェクトを選択します。
  3. ツールバーから、「実行」>「次を実行」>「ランタイム・ワークベンチ」と 選択します。
  4. 新規ワークベンチで、メニューから「ファイル」>「インポート」と選択します。
  5. 「インポート」ウィザードで、「ログ・ファイル」を選択し、「次へ」をクリックします。
  6. 「ログ・ファイル」ページで、「追加」をクリックしてログ・ファイルを追加します。 「ログ・ファイルの追加」ウィンドウで、新規のログ・ファイル・タイプが 「選択されたログ・ファイル」リストに含まれたことを検査します。
  7. ご使用のログ・ファイル・タイプを選択します。「詳細」タブのフィールドおよびテキストがすべて 正しいことを検査します。
  8. ログ・ファイルのロケーションの値を指定します。
  9. OK」をクリックします。
  10. 終了」をクリックして、新規ログ・ファイル・タイプのログ・ファイルをインポートします。 それらのログ・ファイル・レコードが「ログ」ビューに表示されたことを検査します。

デプロイメントのためにログ・パーサー・プラグインをパッケージする

ログ・パーサー・プラグインを Eclipse ワークベンチにデプロイするには、プラグイン・ファイルを、zip ファイルにエクスポートしてパッケージする必要があります。以下の手順を実行してください。

  1. テキスト・エディターで plugin.xml ファイルを開きます。
  2. そのファイルに、ご使用のプラグイン・クラス・ファイル用のランタイム・ライブラリー Jar ファイルが含まれていることを検査します。 例:
    	<runtime>
    		<library name="parsers.jar">
    			<export name="*"/>
    		</library>
    	</runtime>
    	
  3. リモート・ホストからログ・ファイルをインポートできるように、ログ・パーサーをリモート・ホストにデプロイするには、 ご使用のログ・パーサー用の Agent Controller プラグイン構成ファイルを作成する必要があります。 以下の手順を実行してください。
    1. config という名前のフォルダーをログ・パーサー・プラグインに作成します。
    2. その config フォルダーに、pluginconfig.xml という名前のファイルを作成します。 例:
      <?xml version="1.0" encoding="UTF-8"?>
      <PluginConfiguration>
      <Application configuration="default"
          executable="RemoteLogParserLoader"
          extends="default"
          location="%RASERVER_HOME%¥plugins¥RulesParser_1.0.0"
          path="%JAVA_PATH%">
      <Variable name="CLASSPATH"
          position="prepend"
          value="%RASERVER_HOME%¥plugins¥RulesParser_1.0.0¥parsers.jar"/>
      </Application>
      <Option name="RulesParser" type="version" value="1.0.0"/>
      </PluginConfiguration>
      
    3. RulesParser をご使用のログ・パーサー・プラグイン・プロジェクトの名前で置き換えます。
    注: 既存のパーサーを拡張する場合は、親アダプター・ファイルのルート・ディレクトリー を指定する追加のパラメーターを、pluginconfig.xml で指定する必要があります。 以下のパラメーターが必要です。
     <Variable name="GLA_CONFIG_PATH" position="append" value="%RASERVER_HOME%¥plugins¥PARSER_PLUGIN¥config"/>
     <Parameter position="append" value="config_path=%GLA_CONFIG_PATH%"/>
     
    ここで、PARSER_PLUGIN は、拡張するログ・パーサーのディレクトリーです。 <Application> エレメントの最初の子ノードとして新規の <Variable> エレメントを追加し、<Application> エレメントの最後の子として新規の <Parameter> エレメントを追加する必要があります。
  4. テキスト・エディターで build.properties ファイルを開きます。
  5. アダプター構成ファイルが保管されているフォルダーおよび plugin.properties ファイルを 「バイナリー・ビルド」リストに追加します。 また、リモート・ホストでデプロイを行う場合は、config フォルダーも追加します。 たとえば、build.properties ファイルの例は以下のとおりです。
    bin.includes = MyAdapters/,¥
    
    config/,¥
    
    plugin.xml,¥
    
    plugin.properties,¥
    
    parsers.jar
    source.parsers.jar = src/
    output.parsers.jar = bin/
    
  6. 「ファイル」>「エクスポート」と選択して、プラグイン・ファイルをエクスポートします。
  7. 「エクスポート」ウィザードで、>「デプロイ可能なプラグインおよびフラグメント」と選択します。
  8. 次へ」をクリックします。
  9. 「プラグインおよびフラグメントのエクスポート」ページの「使用可能プラグインおよびフラグメント」リストで、 ご使用のプラグインを選択します。
  10. 「エクスポート・オプション」フィールドで「単一デプロイ可能 ZIP ファイル」として deploy を選択します。
  11. zip ファイルの宛先「ファイル名」を指定します。
  12. 終了」をクリックします。

ログ・パーサーをデプロイする

Eclipse のインストール先のプラグイン・ディレクトリーに、先に作成した zip ファイルを解凍して、 ログ・パーサー・プラグインをデプロイすることができます。 これで、ログおよびトレース・アナライザーを使用して、 新たに作成したログ・パーサー・プラグインをテストする準備ができました。

ログ・ファイルをリモート側でインポートすることができるように、 リモート・システムにログ・パーサー・プラグインをデプロイするには、先に作成した zip ファイルを、リモート・システムの Agent Controller インストール・ディレクトリーに解凍します。

 

関連概念
共通ベース・イベント・フォーマットの仕様

関連タスク
ログ・パーサーの作成
static アダプターの作成
規則ベース・アダプターの作成
ログ・パーサーのテスト
ログ・パーサー・プラグイン・プロジェクト・セットアップ

関連参照
アダプター構成ファイルの構造
アダプター構成エディター
正規表現グラマー