負載平衡器外掛程式使用 Web 伺服器的記錄機制寫入記錄訊息。Application Server 的預設記錄層級已設定為 Sun Java System Web Server (INFO)、Apache Web Server (WARN) 和 Microsoft IIS (INFO) 的預設記錄層級。Application Server 記錄層級 (FINE、FINER 和 FINEST) 對映到 Web 伺服器上的 DEBUG 層級。
這些記錄訊息將寫入 Web 伺服器記錄檔,並且以可使用程序檔進行剖析或匯入試算表以計算所需公制的原始資料形式進行。
負載平衡器外掛程式會產生以下類型的記錄訊息:
使用等冪 URL 和錯誤頁面設定時,將記錄這些訊息。
等冪 URL 式樣配置的輸出包含以下資訊:
當記錄層級設定為 FINE 時:
CONFxxxx: IdempotentUrlPattern configured <url-pattern> <no-of-retries> for web-module : <web-module>
當記錄層級設定為 SEVERE 時:
CONFxxxx: Duplicate entry of Idempotent URL element <url-pattern> for webModule <web-module> in loadbalancer.xml."
當記錄層級設定為 WARN 時:
CONFxxxx: Invalid IdempotentUrlPatternData <url-pattern> for web-module <web-module>
錯誤頁面 URL 配置的輸出包含以下資訊 (記錄層級設定為 WARN):
CONFxxxx: Invalid error-url for web-module <web-module>
這些記錄訊息在負載平衡和派送請求時產生。
每個方法隆l的標準記錄的輸出均包含以下資訊 (記錄層級設定為 FINE):
ROUTxxxx: Executing Router method <method_name>
每個方法隆l的路由器記錄的輸出均包含以下資訊 (記錄層級設定為 INFO):
ROUTxxxx: Successfully Selected another ServerInstance for idempotent request <Request-URL>
執行階段記錄的輸出包含以下資訊 (記錄層級設定為 INFO):
RNTMxxxx: Retrying Idempotent <GET/POST/HEAD> Request <Request-URL>
如果存在配置問題 (例如,缺少參照的自訂錯誤頁面),將顯示這些錯誤。
記錄層級設定為 INFO:
ROUTxxxx: Non Idempotent Request <Request-URL> cannot be retried
例如︰ROUTxxxx: Non Idempotent Request http://sun.com/addToDB?x=11&abc=2 cannot be retried
記錄層級設定為 FINE:
RNTMxxxx: Invalid / Missing Custom error-url / page: <error-url> for web-module: <web-module>
例如︰RNTMxxxx: Invalid / Missing Custom error-url / page: myerror1xyz for web-module: test
負載平衡器外掛程式記錄以下資訊:
每個請求的請求隆l/停止資訊。
請求從異常實例容錯移轉到正常實例時的容錯移轉請求資訊。
每個運作狀態檢查週期結束時的異常實例清單。
啟用負載平衡器記錄後,如果將 Web 伺服器記錄層級設定為 DEBUG 或顯示詳細訊息,負載平衡器會將 HTTP 階段作業 ID 寫入 Web 伺服器記錄檔中。因此,如果主控負載平衡器外掛程式的 Web 伺服器位於 DMZ 中,請勿在生產環境中使用 DEBUG 或類似的記錄層級。
如果必須使用 DEBUG 記錄層級,請在 loadbalancer.xml 中將 require-monitor-data 特性設定為 false,以關閉負載平衡器記錄。
設定 Web 伺服器中的記錄選項。該程序取決於 Web 伺服器:
將負載平衡器配置的 monitor 選項設定為 true。
使用 asadmin create-http-lb-config 指令可以在最初建立負載平衡器配置時將監視設定為 true,也可以稍後使用 asadmin set 指令將其設定為 true。依預設,停用監視。
負載平衡器外掛程式記錄訊息的格式如下所示:
HTTP 請求的黃Y處包含以下資訊:
RequestStart Sticky(New) <req-id> <time-stamp> <URL>
時間戳記值是從 1970 年 1 月 1 日隆l的毫秒數。例如:
RequestStart New 123456 602983 http://austen.sun.com/Webapps-simple/servlet/Example1
HTTP 請求的結尾處包含 RequestExit 訊息,如下所示:
RequestExit Sticky(New) <req-id> <time-stamp> <URL> <listener-id> <response-time> Failure-<reason for error>(incase of a failure)
例如︰
RequestExit New 123456 603001 http://austen.sun.com/Webapps-simple/servlet/Example1 http://austen:2222 18
在 RequestExit 訊息中,response-time 表示從負載平衡器外掛程式的角度來看,請求往返所耗的總時間 (以毫秒為單位)。
異常實例清單,如下所示:
UnhealthyInstances <cluster-id> <time-stamp> <listener-id>, <listener-id>...
例如︰
UnhealthyInstances cluster1 701923 http://austen:2210, http://austen:3010
容錯移轉請求清單,如下所示:
FailedoverRequest <req-id> <time-stamp> <URL> <session-id> <failed-over-listener-id> <unhealthy-listener-id>
例如︰
FailedoverRequest 239496 705623 http://austen.sun.com/Apps/servlet/SessionTest 16dfdac3c7e80a40 http://austen:4044 http://austen:4045