Agent Controller 配置檔
Agent Controller 配置是用兩組配置檔來指定的。
第一組是基本配置,用來說明引擎的預設值。
第二組是外掛程式配置,用來說明引擎的特定應用程式設定。
這份文件說明各配置及如何撰寫配置延伸規格的詳細資料。
這份文件所提及的 <install directory> 目錄對應於 Agent Controller 的解壓縮路徑。
在配置檔中,這個目錄也稱為 %RASERVER_HOME%。
基本配置
基本配置是利用 XML 綱目 <install directory>/config/serviceconfig.xsd 來建構的 <install directory>/config/serviceconfig.xml 檔所組成的。
這用來指定 Agent Controller 的系統環境變數、應用程式配置和連線功能等預設值。
所有配置都能夠使用基本配置,當啟動引擎服務時,便會載入它。
應用程式開發人員不應修改這個基本配置檔,因為基本配置中的任何變更都是廣域的。
您應該利用外掛程式配置(說明如下)來指定特定外掛程式和應用程式專用的設定。
外掛程式配置
每個使用者定義的應用程式都應該將它的配置檔和相依關係放在外掛程式目錄 <install directory>/plugin/<plugin name> 之下,其中 <plugin name> 是用來識別應用程式的唯一名稱。
外掛程式配置檔 pluginconfig.xml 應該放在外掛程式目錄的 config 子目錄之下。
一般而言,JAR 檔會放在外掛程式目錄的 lib 子目錄之下。
開發人員可以利用 XML 綱目 <install directory>/config/pluginconfig.xsd 來協助建構外掛程式配置檔。
元素和屬性
元素:AgentControllerConfiguration
這是基本配置的根元素。
設定用來啟動引擎服務。
使用者:基本配置
子元素:AgentControllerEnvironment、Application、Hosts、Service、Agent、Option、Plugin
屬性:
- activeConfiguration
- 指定在引擎啟動時,要載入哪項配置
- filePort
- 指定 Agent Controller 檔案轉送服務在接聽的埠。預設值是 10005。
- isDataMultiplexed
- 指定是否應該透過 Agent Controller 的控制通道,來傳輸側寫和記載資料。依預設,資料通道會任意使用某一個埠來傳輸資料,而且可能會遭到防火牆的阻斷。若透過控制通道來轉送資料,即可針對通過防火牆的登入連線要求,開啟一組預先定義的埠。這些埠包含預設埠 10002、安全埠 1003 及檔案伺服器埠 10005。這個屬性的預設值是 false。
- jvm
- Java 虛擬機器動態執行時期程式庫(jvm.dll 或 libjvm.so)的完整路徑
- loggingDetail
- 如果指定 HIGH 的話,便啟用引擎的行號記載
- loggingDirectory
- 引擎日誌檔 servicelog.log 建立在其中的目錄
- loggingLevel
- 日誌訊息的嚴重性過濾器
- port
- 用來接聽送入的不安全用戶端連線的埠
- processPolling
- 指定是否正在檢查程序狀態。
這個屬性主要用於 Windows 系統,以確定程序終止時會通知 Agent Controller。預設值是 true。
- securedPort
- 用來接聽送入的安全用戶端連線的埠
- version
- 引擎的版本
元素: PluginConfiguration
這是外掛程式配置的根元素。
在載入基本配置之後,會載入設定。
使用者:外掛程式配置
子元素:AgentControllerEnvironment、Application、Service、Agent、Option
屬性:
- requires
- 這項配置所依賴之以逗點區隔的外掛程式名稱清單
元素:AgentControllerEnvironment
這是這項配置所提供的廣域環境變數的位置保留區。
這些都發佈在系統中,可供包括基本配置在內的所有其他配置使用。
使用者:AgentControllerConfiguration、PluginConfiguration
子元素:Variable
屬性:
- configuration
- 環境變數加到其中的配置名稱
元素:Application
這是特定應用程式環境的位置保留區。
只有這個特定應用程式能夠見到其中的設定。
使用者:AgentControllerConfiguration、PluginConfiguration
子元素:Variable、Parameter
屬性:
- configuration
- 在其中加入應用程式的配置名稱
- executable
- 應用程式的名稱,用戶端必須利用這個名稱來識別這個應用程式
- path
- 這個應用程式應該執行之程式的實際完整路徑
- location
- 這個應用程式的工作目錄
- extends
- 已定義了相同應用程式的配置名稱,這會將現行設定加在上面
元素: Hosts
這是主機資訊的位置保留區。
引擎利用它來允許或禁止某些主機的連線。
使用者:AgentControllerConfiguration
子元素:Allow、Deny
屬性:
configuration使用這個主機資訊的配置名稱
元素:Allow
這用來指定允許哪些主機連線到引擎。
使用者:Hosts
屬性:
- host
- 主機的名稱或 IP 位址
- net
- 子網路
- mask
- 子網路遮罩
元素:Deny
這用來指定不允許哪些主機連線到引擎。
使用者:Hosts
屬性:
- host
- 主機的名稱或 IP 位址
- net
- 子網路
- mask
- 子網路遮罩
元素:Service
這用來指定在引擎啟動時,要載入哪個使用者定義的模組。
使用者:AgentControllerConfiguration、PluginConfiguration
子元素:Option
屬性:
- configuration
- 要載入這項服務的配置名稱
- name
- 服務的名稱
- path
- 動態載入程式庫的完整路徑
元素:Agent
這用來指定特定代理程式資訊。
使用者:AgentControllerConfiguration、PluginConfiguration
子元素:Option
屬性:
- configuration
- 使用這個代理程式配置的配置名稱
- name
- 代理程式的名稱
- type
- 代理程式的類型
- dataChannelSize
- 用來配置跨程序通訊的共用記憶體量
- logFile
- 寫入代理程式傳送的訊息之日誌檔的完整路徑
- client
- 指定這個代理程式是動態或無監視器型
元素:Option
這用來儲存名稱值配對。
使用者:AgentControllerConfiguration、PluginConfiguration、Service、Agent
屬性:
- name
- 選項名稱(也就是名稱空間)
- type
- 選項類型(也就是選項名稱)
- value
- 選項值
元素:Plugin
這用來指定尋找外掛程式配置的目錄
使用者:AgentControllerConfiguration
屬性:
path尋找外掛程式配置的完整目錄
元素:Variable
環境變數。
使用者:Application、AgentControllerEnvironment
屬性:
- name
- 環境變數的名稱(如 CLASSPATH)
- value
- 環境變數的值
- position
- 指定這個值要附加在現有值的前面或後面,或取代現有的值
元素:Parameter
程式參數。
使用者:Application
屬性:
- value
- 程式參數的值
- position
- 指定這個參數要附加在現有參數的前面或後面,或取代現有的參數