部署日誌剖析器外掛程式專案

必備條件

建立外掛程式專案來包含日誌剖析器的成品之後,您必須配置外掛程式,以便日誌和追蹤分析器能夠使用它。 請遵循下列步驟:

  1. 將外掛程式相依性加入外掛程式的 Manifest 檔中
  2. 將日誌剖析器延伸點外掛程式的 Manifest 檔中
  3. 新增靜態剖析器的延伸點
  4. 建立封套剖析器類別
  5. 驗證日誌剖析器外掛程式設定
  6. 套裝您的日誌剖析器
  7. 部署日誌剖析器

1. 新增外掛程式相依關係

下列外掛程式相依關係必須包括在外掛程式 Manifest 檔中。 在文字編輯器中開啟 plugin.xml 檔。在檔案中尋找必要元素,然後將外掛程式相依關係新增到該元素中。例如:

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

附註:上方所述的必要外掛程式必須放置在 Eclipse 外掛程式目錄中,或併入目前的工作區中。


2. 新增日誌剖析器延伸點

您必須定義延伸點給您要剖析及匯入日誌和追蹤分析器的每個應用程式日誌檔類型。 以下是定義了規則配接器和靜態配接器的 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. 第二個 <field> 標示定義用來選取要匯入的日誌檔版本的 UI 組合框。 它是一個必要元素。 請取代下列屬性:
  6. <parserParameter> 標示定義每個支援的日誌檔版本要用哪個配接器配置檔。請取代下列屬性:
提示:您應該定義預設,以防找不到相符版本。 如果您只有一個配接器配置檔,您只需要有預設 parserParameter。 例如:
<parserParameter
   name="Default"
   value="./MyAdapter/myadapter.adapter">
</parserParameter>

上面指定的欄位會在「匯入日誌」精靈中建立 MyApp myapp.log 的選項,如下所示:

「匯入日誌」精靈顯示 myapp myapp.log 作為要匯入的選項

您可以利用 plugin.properties 檔來定義 plugin.xml 檔中可能需要有不同版本的內容。 比方說,如果有將併入「匯入日誌檔」精靈的文字字串需要翻譯成不同語言,它們可以定義在 plugin.properties 檔中,且您可以針對您要支援的語言來併入不同的內容檔。 在 plugin.properties 檔中,您定義了 plugin.xml 檔中所能使用的替代變數。 上述 plugin.xml 的 plugin.properties 檔看起來如下:


# RulesParser 外掛程式的內容

pluginName = RulesParser
providerName = MyCompany

# logParser 延伸點訊息:
STR_MYAPP_PARSER_DESCRIPTION = MyApp 規則剖析器 1.0 版
STR_MYAPP_TOOLTIP1           = 輸入日誌檔的位置
STR_MYAPP_TOOLTIP2           = 選取要匯入的日誌檔版本

提示:視執行應用程式的語言環境而定,應用程式可能會用不同的語言將資料寫入自己的日誌檔中。但會用單一語言寫入靜態剖析器類別或正規表示式規則,以剖析日誌檔。因此,如果要支援可用多種語言寫入的日誌檔類型,則必須用每一種語言來建立個別的靜態剖析器配接器檔案或規則配接器檔案。然後,要在該日誌檔類型的 logParser 延伸點中,為每個配接器檔案新增一個 parserParameter 標示,以在名稱欄位中指定要套用的語言。請務必將 parserParameter 名稱值新增到版本欄位 defaultValue 屬性的清單中。這個動作可讓使用者在匯入日誌檔時,選擇日誌檔的正確語言。

例如,下列剖析器參數可新增至 logParser 延伸點,以支援匯入的英文、法文和德文日誌:

	<parserParameter
	         	name="MyApp 1.0(rules) English"               
	         	value="./MyAdapter/myadapter_en.adapter"/>         
	<parserParameter
	         	name="MyApp 1.0(rules) French"               
	         	value="./MyAdapter/myadapter_fr.adapter"/>         
	<parserParameter
	         	name="MyApp 1.0(rules) German"               
	         	value="./MyAdapter/myadapter_de.adapter"/>

3. 新增靜態剖析器的延伸點

如果您正在建立靜態剖析器,請務必執行這個步驟。

您必須針對靜態剖析器,使用 staticParser 延伸規格,在 plugin.xml 中指定您已建立的靜態剖析器類別。這個延伸點可讓 您在「日誌匯入實務」中使用類別來剖析檔案時,找得到該類別。
新增下列延伸點:

<extension
  point="org.eclipse.hyades.logging.adapter.config.staticParser">
  <parserClassname
    name="myLogParser33.MyStaticParser">
  </parserClassname>
</extension>

myLogParser33.MyStaticParser 取代成您的 Java 剖析器類別名稱。

4. 建立剖析器的 Wrapper 類別

請建立繼承 org.eclipse.hyades.logging.adapter.config.StaticParserWrapper 的靜態封套類別。 這個類別用於靜態剖析器以及規則型剖析器,其用「通用日誌配接器」執行時期,來執行和使用者在「日誌匯入」精靈中所指定之版本有關的配接器配置檔。

/*
 * 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"; 
	}
}

5. 驗證日誌剖析器外掛程式設定

如果要確認您已正確配置外掛程式 Manifest 檔,您可以在執行時期工作台中執行您的外掛程式專案。 請遵循下列步驟:

  1. 選取視窗 > 開啟視景 > 其他 > 外掛程式開發來切換到「外掛程式」視景。
  2. 從「外掛程式開發」視景中,選取您的外掛程式專案。
  3. 從工具列中,選取執行 > 執行為 > 執行時期工作台
  4. 在新工作台中,從功能表中,選取檔案 > 匯入
  5. 在「匯入」精靈中,選取日誌檔,再按下一步
  6. 在「日誌檔」頁面中,按一下新增來新增日誌檔。在「新增日誌檔」視窗中, 確認您的新日誌檔類型已併入所選日誌檔清單中。
  7. 選取您的日誌檔類型。請確認詳細資料標籤中的所有欄位和文字都正確。
  8. 指定日誌檔位置的值。
  9. 按一下確定
  10. 按一下完成來匯入新日誌檔類型的日誌檔。請驗證日誌檔記錄已顯示在「日誌」視圖中。
    提示:如果「日誌視圖」中沒有顯示任何日誌檔記錄,請驗證是否使用執行類別 org.eclipse.hyades.logging.adapter.config.outputters.StaticParserOutputter 來配置剖析器配接器配置檔中的 Outputter 元件。

6. 套裝和部署日誌剖析器外掛程式

本端部署

如果要將您的日誌剖析器外掛程式部署在 Eclipse 工作台中,您必須將外掛程式檔匯出到 zip 檔中來套裝它們。 請遵循下列步驟:

  1. 用「外掛程式 Manifest」編輯器來開啟 plugin.xml 檔。
  2. 選取執行時期標籤,並驗證執行時期程式庫清單是否包含您外掛程式類別的 Jar 檔。如果沒有列出任何 Jar 檔,請按一下新增...按鈕,然後指定適當的名稱,來新增 Jar 檔。
  3. 選取建置標籤,然後檢查要併入您匯入外掛程式中的二進位建置清單中,是否有適當的檔案和資料夾。例如,檢查 plugin.xml、plugin.properties 和剖析器配接器配置檔。將變更儲存到 plugin.xml 檔。
  4. 選取檔案 > 匯出來匯出外掛程式檔。
  5. 在「匯出」精靈中,選取 可部署的外掛程式和片段
  6. 下一步
  7. 開啟「匯出外掛程式和片段」頁面,在可用的外掛程式和片段清單中選取您的外掛程式,並勾選其勾選框。
  8. 在「匯出選項」欄位中,選取部署為單一 ZIP 檔
  9. 指定 zip 檔的目的地檔名
  10. 按一下完成

遠端部署

如果要在遠端主機中部署日誌剖析器,以便能夠從這個遠端主機匯入日誌檔,您必須建立日誌剖析器的 Agent Controller 外掛程式配置檔。 請遵循下列步驟:
  1. 用「外掛程式 Manifest」編輯器來開啟 plugin.xml 檔。
  2. 選取執行時期標籤,並驗證執行時期程式庫清單是否包含您外掛程式類別的 Jar 檔。如果沒有列出任何 Jar 檔,請按一下新增...按鈕,然後指定適當的名稱,來新增 Jar 檔。
  3. 在稱為 config 的日誌剖析器外掛程式中,建立一個資料夾。
  4. 在 config 資料夾中,建立一個稱為 pluginconfig.xml 的檔案。例如:

    <?xml version="1.0" encoding="UTF-8"?>
    <PluginConfiguration requires="org.eclipse.hyades.logging.parsers">
    <Application configuration="default" 
        executable="RemoteLogParserLoader" 
        extends="default" 
            location=="%SYS_TEMP_DIR%" 
        path="%JAVA_PATH%">
    <Variable name="CLASSPATH" 
        position="prepend" 
        value="%RASERVER_HOME%\plugins\RulesParser_1.0.0\parsers.jar"/>
            <Variable name="GLA_CONFIG_PATH" position="prepend" value="%RASERVER_HOME%\plugins\RulesParser_1.0.0"/>
            <Parameter position="append" value=""config_path=%GLA_CONFIG_PATH%""/>    
    </Application>
    <Option name="RulesParser" type="version" value="1.0.0"/>
    </PluginConfiguration>
    

  5. 用日誌剖析器外掛程式專案的名稱來取代 RulesParser
  6. 用「外掛程式 Manifest」編輯器來開啟 plugin.xml 檔。
  7. 選取建置標籤,然後檢查要併入您匯入外掛程式中的 二進位建置 清單中,是否有適當的檔案和資料夾。例如,檢查 plugin.xml、plugin.properties、剖析器配接器配置檔和剛剛建立好的 pluginconfig.xml 檔。將變更儲存到 plugin.xml 檔。
  8. 選取檔案 > 匯出來匯出外掛程式檔。
  9. 在「匯出」精靈中,選取 可部署的外掛程式和片段
  10. 下一步
  11. 開啟「匯出外掛程式和片段」頁面,在可用的外掛程式和片段清單中選取您的外掛程式,並勾選其勾選框。
  12. 在「匯出選項」欄位中,選取部署為單一 ZIP 檔
  13. 指定 zip 檔的目的地檔名
  14. 按一下完成

7. 部署日誌剖析器

您可以在 Eclipse 安裝架構的 Eclipse 目錄中,將剛建立的 zip 檔解壓縮,來部署您的日誌剖析器外掛程式。現在,您已準備好利用日誌和追蹤分析器來測試新建立的日誌剖析器外掛程式。

如果要將日誌剖析器外掛程式部署在遠端系統中,使日誌檔能夠進行遠端匯入,請在遠端系統的 Agent Controller 安裝目錄中,unzip 剛建立的 zip 檔。 重新啟動 Agent Controller。

 

相關概念
Common Base Event 格式規格

相關作業
建立日誌剖析器
建立靜態配接器
建立規則型配接器
測試日誌剖析器
設定日誌剖析器的外掛程式專案

相關參照
配接器配置檔結構
配接器配置編輯器
正規表示式文法