ODL 組態

每個使用 ODL 記錄格式的 Oracle Enterprise Performance Management System 產品都至少有一個記錄組態檔 logging.xmlEPM System 元件具有 loggingCOMPONENT_NAME.xml 格式的描述性名稱。

記錄組態檔包含兩個區段:log_handlersloggerslog_handlers 區段定義日誌記錄器及其參數,而 loggers 區段則識別詳細資訊,包括要使用的記錄層級和 log_handler。

如需您可指定的 log_handler 特性清單,請參閱表格 3-9

ODL 記錄層級

表格 3-7 ODL 記錄層級

層級 描述
INCIDENT_ERROR:1 與不明原因所造成之嚴重錯誤相關的訊息。使用者必須向 Oracle 客戶服務部求助以解決問題。
ERROR:1 與需要系統管理員立即注意但不是由 EPM System 元件瑕疵造成之嚴重問題相關的訊息
WARNING:1 與系統管理員應複查之潛在問題相關的訊息
NOTIFICATION:1 與主要生命週期事件 (例如啟用或停用主要子元件或功能) 相關的訊息
NOTIFICATION:16 EPM System 元件中一般事件相關的訊息
TRACE:1 EPM System 元件的一般使用者有意義之事件的追蹤或偵錯訊息
TRACE:16 「Oracle 客戶服務部」可用來診斷 EPM System 元件問題的詳細追蹤或偵錯訊息
TRACE:32 非常詳細的追蹤或偵錯訊息,通常用來供 Oracle 開發人員找出產生錯誤的來源

ODL 組態檔:單一受管理伺服器部署

EPM System 元件部署至單一受管理伺服器會為所有已部署的 Java Web 應用程式產生統一的記錄組態檔 logging.xml。在 Windows 伺服器上,此檔案通常位於 MIDDLEWARE_HOME/user_projects/domains/EPMSystem/config/fmwconfig/servers/EPMServer0 中。

ODL 組態檔:標準部署

EPM System 的標準部署會為每個已部署的 Java Web 應用程式產生記錄組態檔 logging.xml。在 Windows 伺服器上,這些檔案通常位置如下:

表格 3-8 標準部署中的 ODL 組態檔位置

元件 logging.xml 的位置
管理伺服器 (Oracle WebLogic Server 管理主控台、Oracle Web Services Manager、Enterprise Manager) MIDDLEWARE_HOME/user_projects/domains/EPMSystem/config/fmwconfig/servers/AdminServer/logging.xml
Oracle Hyperion Provider Services MIDDLEWARE_HOME/user_projects/domains/EPMSystem/config/fmwconfig/servers/AnalyticProviderServices0/logging.xml
Oracle Hyperion Calculation Manager MIDDLEWARE_HOME/user_projects/domains/EPMSystem/config/fmwconfig/servers/CalcMgr0/logging.xml
Oracle Essbase Administration Services MIDDLEWARE_HOME/user_projects/domains/EPMSystem/config/fmwconfig/servers/EssbaseAdminServices0/logging.xml
Oracle Hyperion Foundation Services MIDDLEWARE_HOME/user_projects/domains/EPMSystem/config/fmwconfig/servers/FoundationServices0/logging.xml
Oracle Hyperion Financial Management Web MIDDLEWARE_HOME/user_projects/domains/EPMSystem/config/fmwconfig/servers/HFMWeb0/logging.xml
Oracle Hyperion Planning MIDDLEWARE_HOME/user_projects/domains/EPMSystem/config/fmwconfig/servers/Planning0/logging.xml

修改 ODL 組態檔

您可以修改 logging.xml 中所定義日誌記錄器的特性,以決定所記錄的訊息層級。預設會在 logging.xml 中設定適合 EPM System 元件之一般作業的記錄層級。您可以設定額外的日誌處理常式來變更記錄行為。例如,您可以在日誌處理常式中包含 rotationFrequency 參數來指定記錄檔輪替頻率。如需完整的參數清單,請參閱表格 3-9

表格 3-9 可設定的 ODL 日誌特性

日誌特性 描述

path

日誌路徑

format

要使用的格式

建議值為 ODL-Text

maxFileSize

每個日誌檔的大小上限 (位元組)

當主要日誌檔達到指定大小時,就會觸發日誌輪替,會將主要日誌檔封存並建立一個新的日誌檔。

maxLogSize

整個日誌的大小上限 (位元組)

系統會刪除較舊的封存檔案,以將總日誌大小維持在指定的限制範圍內。

rotationFrequency

日誌的輪替頻率 (分鐘)

值必須是數字 (分鐘),或是 hourlydailyweekly 等單字。(此設定不區分大小寫。)

baseRotationTime

時間型日誌輪替的基礎時間;例如 rotationFrequency 設定的起點

預設:1970 年 1 月 1 日 UTC

請使用下列其中一種格式:

  • HH:mm

  • yyyy-MM-dd

  • yyyy-MM-ddT-HH:mm

  • yyyy-MM-dd-HH:mm:ss.sTZ,其中 TZ 是時區指示器,可以是 Z (代表 UTC) 或與格林威治標準時間的時差 (格式為 plus_or_minusHH:mmm)

註:

如果時間格式未指定時區,則會使用本地時區。

retentionPeriod

日誌檔的保留期間

系統會刪除比指定期間舊的檔案。只有當有日誌輪替時,才會刪除檔案;任何背景執行緒都不會刪除日誌檔。因此,在保留期間到期後的一段時間內可能不會刪除檔案。此值必須是數字 (分鐘),或是 day、week、month (30 天) 或 year (值不區分大小寫)。

encoding

要使用的字元編碼類型

XML 檔案必須是 UTF-8 編碼,才能處理延伸字元。預設為 <?xml version="1.0" encoding="UTF-8" ?>

supplementalAttributes

可新增至每個日誌訊息的補充屬性名稱清單 (以逗號分隔)

屬性值必須在 ExecutionContext 類別中定義。

useSourceClassAndMethod

是否應將 Java 來源類別與方法名稱新增至每個類別訊息

值為層級名稱。指定層級或更低層級的訊息會包含來源類別與方法名稱。也接受 truefalse 常數作為 OFFALL 的別名。預設值為 TRACE:1 (精細)。

useDefaultAttributes

是否應將預設屬性值新增至每個日誌訊息

可指派的預設屬性為 HOST_ID、HOST_NWADDR 及 USER_ID。值應該為 truefalse。ODL-XML 格式的預設值為 true,ODL-Text 格式的預設值為 false

includeMessageArguments

也具有訊息 ID 的格式化日誌訊息是否隨附訊息引數

可能的值:true (預設) 或 false.

useThreadName

useThreadName 旗標,此旗標會控制處理常式是否嘗試記錄真實的執行緒名稱,而不是 java.util.logging.LogRecord 所提供的 threadID

如果旗標為 true,處理常式就會嘗試記錄真實的執行緒名稱。在某些情況下,處理常式可能無法判斷真實的執行緒名稱,在該情況下,將會記錄 threadID。預設值為 true

useRealThreadId

useRealThreadId 旗標,此旗標會控制處理常式是否嘗試記錄真實的執行緒 ID,而不是 java.util.logging.LogRecord 所提供的 threadID

如果旗標為 true,處理常式就會嘗試記錄真實的執行緒 ID。在某些情況下,處理常式可能無法判斷真實的執行緒名稱,在該情況下,將會記錄 threadID。預設值為 false。記錄真實執行緒 ID 與 useThreadName 特性無法共存。如果 useThreadNametrue,系統就會忽略 useRealThreadId 特性的值。

locale

用於將訊息本土化的預設語言環境置換

預設值為預設語言環境,這是在 EPM System Configurator 中設定。

keepOpen

是要將主要日誌檔永遠保持開啟,還是要在每次日誌作業時開啟並關閉。

可能的設定:truefalse。預設設定為 true,這會將主要日誌檔永遠保持開啟。

在大多數情況下,您都應該使用預設值。

autoFlushLevel

自動清除的層級設定

ODLHandler 允許將日誌記錄緩衝處理,但會在取得層級等於或高於所指定 autoFlush 層級的日誌記錄時,自動清除緩衝區。預設值為 NOTIFICATION:1

addJvmNumber

新增至日誌檔名稱的 JVM 編號

JVM 編號是由 oracle.process.index 系統特性所定義。如果未設定該系統特性,則會忽略此選項。

applicationContextProvider

實作 ApplicationContext 介面的類別名稱

此類別必須具有預設的建構函式。特殊值 disabled 可用來停用應用程式名稱的記錄。預設的應用程式環境定義提供者是平台特定的;在大多數情況下,您不需要設定此特性。

userContextProvider

實作 UserContext 介面的類別名稱

此類別必須具有預設的建構函式。特殊值 disabled 可用來停用使用者名稱的記錄。預設的使用者環境定義提供者是平台特定的;在大多數情況下,您不需要設定此特性。

您可以修改日誌記錄器的特性以進行元件偵錯,或產生「Oracle 客戶服務部」所要求的資訊以識別 EPM System 元件的問題。

例如,若要擷取 Oracle Hyperion Shared Services 偵錯訊息,請將每個 Shared Services 日誌記錄器定義中的記錄層級變更為 TRACE:32

註:

完成偵錯之後,請從備份複本還原原始 logging.xml,以確保記錄設定為最佳設定。

若要修改記錄組態檔,請執行下列動作:

  1. 針對要變更記錄行為的 EPM System 元件,建立其記錄組態檔的備份複本。請參閱 EPM System 產品記錄矩陣

  2. 使用文字編輯器開啟 logging.xml

  3. 找出日誌記錄器定義。例如,若要變更 Shared Services 的記錄層級,請變更下列日誌記錄器定義:

    <logger name="oracle.EPMCAS" level="NOTIFICATION:1" useParentHandlers="false">
         <handler name="epmcas-handler" />
    </logger>
    <logger name="oracle.EPMCES" level="NOTIFICATION:1" useParentHandlers="false">
         <handler name="epmces-handler" />
    </logger>
    <logger name="oracle.EPMCMS" level="NOTIFICATION:1" useParentHandlers="false">
         <handler name="epmcms-handler" />
    </logger>
    <logger level="NOTIFICATION:1" name="oracle.EPMCSS">
         <handler name="epmcss-handler" />
    </logger>
  4. 視需要修改 level 特性以變更訊息記錄層級。例如,將每個日誌記錄器的 level 特性設為 TRACE:32 以記錄詳細的偵錯訊息。

    請參閱 ODL 記錄層級

  5. 儲存並關閉 logging.xml

  6. 重新啟動 EPM System 元件以啟用變更。