第三十一章 配置 Web Gateway 的默認參數 - 事件記錄參數
事件日志級別字段指定 Web Gateway
寫入 Web Gateway
事件日志的信息。日志記錄選項定義為一串字符,每個字符代表一個日志記錄命令。此處設置的日志級別值是系統(即所有 IRIS
服務器)的默認值。除非另有說明,可以為各個 IRIS
服務器設置不同的值。
可以通過CSP Web
管理頁面菜單查看或清除日志。如下所示的日志記錄參數主要用于故障排除:
Logging Option |
Function |
|
---|---|---|
E |
記錄所有錯誤。此選項允許您監視連接失敗。 | |
V |
詳細:記錄 Web Gateway 和 IRIS 系統之間的基本連接對話。使用此選項可以記錄 Web Gateway 和 IRIS 服務器之間的戰略通信點。該命令有 7 個級別(1 到 7 )。每個連續的級別都會記錄更詳細的信息。級別是累積的。例如,級別V3 包含為V1 和V2 指定的所有日志信息。 |
|
EV |
輸入 EV 以打開基本事件記錄。較高的日志級別會在日志文件中生成大量數據,并且只能用于診斷問題。對于生產系統,建議將日志級別設置為不高于 EV 。 |
|
V1 |
與V 相同。 |
|
V2 |
除了先前級別指定的信息之外,此級別還記錄: 有關 Web Gateway 和 IRIS 之間的基本連接管理的信息(每個連接的啟動點和關閉點)。從瀏覽器接收到的傳輸中斷。 與 IRIS 的連接被強制關閉的情況(由于 IRIS 缺乏響應或連接無法恢復的其他錯誤)。狀態感知(保留模式 1)會話中的訪問沖突(例如,無效的會話 ID )。 |
|
V3 |
除了為先前級別指定的信息外,此級別還記錄:IRIS 標頭和 HTTP 標頭。注意:當為單個服務器指定此日志記錄級別時,不會記錄請求標頭,但會記錄響應標頭和其他數據。 |
|
V4 |
除了為先前級別指定的信息之外,此級別還記錄: 有關狀態感知會話的序列化的信息。 注意:當為單個服務器指定此日志記錄級別時,不會記錄請求標頭,但會記錄響應標頭和其他數據。 |
|
V5 |
除了為先前級別指定的信息之外,此級別還記錄通過 WebSocket 協議從 IRIS 接收和發送到IRIS 的數據緩沖區的內容。所有數據幀(如果適用)也會被記錄。最后,還會在初始連接時記錄有關所創建的 WebSocket 性質的更多信息。例如:WebSocket Connection WebSocket Connection Accepted by InterSystems IRIS: WSClassProtocolVersion=2; SharedConnection=0; NoDataFraming=2; BinaryData=1; 注意:當為單個服務器指定此日志記錄級別時,不會記錄請求標頭,但會記錄響應標頭和其他數據。 |
|
V6 |
除了先前級別指定的信息之外,此級別還記錄: 發送到 IRIS 的數據塊標頭。從 Web 服務器請求數據(多部分附件除外)。從 IRIS 接收的數據塊的標頭。注意:當為單個服務器指定此日志記錄級別時,不會記錄請求標頭,但會記錄響應標頭和其他數據。 |
|
V7 |
除了為先前級別指定的信息外,此級別還記錄: 從 IRIS 返回的完整內容。。注意:當為單個服務器指定此日志記錄級別時,不會記錄請求標頭,但會記錄響應標頭和其他數據。 |
|
V9 |
記錄傳入的 HTTP 請求數據。記錄所有 HTTP 請求的完整正文。該日志指令可以進一步擴展和完善。v9r:除了記錄所有 HTTP 請求外,還記錄所有 HTTP 響應。v9a :將所有 HTTP 請求記錄到 Web Gateway 主目錄中的 http.log 。v9b:按會話記錄所有 HTTP 請求。在 Web Gateway 主目錄中創建 http[session_id].log 形式的日志文件,其中 session_id 是 10 字節會話 ID 。v9m :將所有多部分帖子記錄在 Web Gateway 主目錄中。原始傳入 HTTP 請求與各個組件以其編碼和解碼形式記錄在一起。注意:當為單個服務器指定時,形式 V9 、V9r 、V9a 和 V9b 無效。這些形式的日志記錄只能在默認級別啟用。 |
|
s |
Sessions :記錄有關會話令牌管理的信息:分配新會話 ID 的點。對于現有會話:指示會話令牌是否從 cookie 或表單/URL 變量 CSPCHD 中提取對于所有請求:傳輸到 IRIS 的最終會話 ID 。注意:當為單個服務器指定時,此日志記錄選項無效。該選項只能在默認級別啟用。 |
|
c | 連接:記錄有關使用 Kerberos 庫 (IRISCONNECT ) 建立的連接的信息。包含小寫 c 的日志級別,以指示 Web Gateway 記錄對所有調用的 IRISCONNECT 函數的完整審核,以及提供的輸入參數和返回的結果。為簡潔起見,IRIS 的輸入和輸出緩沖區的內容未記錄在此級別。設置大寫 C 的日志級別,除了 IRISCONNECT 函數調用之外,還記錄輸入和輸出緩沖區的內容。除了 Web 網關提供的日志記錄功能之外,還可以指示 IRISCONNECT 庫生成記錄其內部進程的詳細跟蹤。要另外請求生成 IRISCONNECT 跟蹤,請在 c 指令中添加一個數字以指示所需的跟蹤類型。例如,除了標準網關日志條目之外,日志級別 c3 還會生成級別 3 IRISCONNECT 跟蹤。有效的 IRISCONNECT 跟蹤級別為 1 到 6 ,定義如下:6 — errors 5 — warnings 4 — informational message 3 — output data 2 — input data 1 — normal events 與 Web Gateway 日志級別不同,IRISCONNECT 跟蹤在較高日志級別上不太詳細。因此,日志級別 1 提供最詳細的跟蹤文件。 Web Gateway 指示 IRISCONNECT 庫在 Web Gateway 主目錄中名為 irisconnect.log 的文件中維護其跟蹤。此文件的安全注意事項和權限與 Web Gateway 事件日志的安全注意事項和權限相同。注意: IRISCONNECT 跟蹤只能在每個進程的基礎上激活,因此它不能真正與服務器隔離。配置完成后,在嘗試新的 SSL 連接之前不會觸發跟蹤日志生成。 |
|
t | 傳輸:記錄 Web 網關接收和發送的原始數據緩沖區。該選項的格式為:t[x][y] 。x 的值指示 Web 網關記錄在 Web 網關和 IRIS 之間傳輸的數據緩沖區,y 的值指示 Web 網關記錄在 Web 網關和客戶端之間通過托管 Web 服務器傳輸的數據緩沖區。x and y can take the following values: 0: No transmission data to be recorded. 1: Record request data only. 2: Record response data only. 3: Record request and response data. 使用小寫 t 會導致 Web Gateway 僅記錄每個緩沖區傳輸數據的前 256 字節。使用大寫 T 會導致 Web Gateway 記錄完整的數據緩沖區。所有不可打印的字符都以其轉義形式記錄。注意:當為單個服務器指定此日志記錄級別時,y 選項記錄發送到客戶端的響應緩沖區,但不記錄來自客戶端的傳入請求緩沖區。 |
|
p[n] |
性能:指示網關捕獲信息以評估 CSP 安裝的性能。n 是秒數(總服務時間),低于該秒數則不會為請求記錄數據。例如,指令 p 記錄所有請求的數據,p2 記錄服務時間超過 2 秒的請求的數據。記錄以下信息。 服務請求的總時間:服務請求所花費的總時間(從請求到達 Web Gateway 的時間到響應數據的最后一個字節離開 Web Gateway 環境的時間)。獲取與 IRIS 的[新]連接:從請求到達 Web 網關到為請求提供服務而保留與 IRIS 的連接之間所花費的時間。記錄的消息指示在此期間是否創建了新連接(而不是重用現有連接)。向 IRIS 發送請求:從Web 服務器讀取請求數據的第一個字節和最后一個字節并將其分派到 InterSystems IRIS 之間所花費的時間。在 InterSystems IRIS 中處理請求:將請求數據的最后一個字節分派到 InterSystems IRIS 與 Web 網關接收到響應數據的第一個字節之間所花費的時間。 從 InterSystems IRIS 接收響應:從 InterSystems IRIS 接收響應數據的第一個字節和最后一個字節并將其發送到 Web 服務器之間所花費的時間。 |
|
pn | 提供根據性能監視器的結果有條件地激活詳細日志記錄的功能。當您想要記錄有關處理時間超過一定時間的請求的更多信息時非常有用。 n 是記錄性能數據的可選較低服務時間閾值(以秒為單位),v 是所需的詳細日志級別。 此機制適用于詳細事件日志和 HTTP 日志記錄設置。記錄錯誤信息的請求 e 始終應用于所有請求,無論性能監視器是否記錄它們。 例如:ep5(v9)該選項記錄所有請求(e)在處理請求時遇到的任何錯誤。此外,它還記錄 HTTP 請求消息 (v9),但僅記錄處理時間超過 5 秒的請求 (p5)。 網關事件日志記錄的設計目的是對性能影響最小,并且在消耗的系統資源方面占用的空間較小。因此,存在以下限制: 每個單獨的設置只能指定一種詳細日志級別。換句話說,不可能為性能監視器記錄的請求指定 v9 級別,并為所有其他請求指定 v2 級別。例如,如果指定了 v2p5(v9),則僅遵循有條件應用的 v9 級別。 Web 網關配置允許您在全局和每個服務器的基礎上指定事件日志級別。當詳細日志記錄生效時,一些記錄會在識別目標 InterSystems IRIS 服務器之前寫入,因此,為了獲得最佳結果,最好在默認參數下在全局級別指定條件日志記錄。 |
|
pp[n] | 提供詳細的時序信息如下: 請求的預處理:識別目標 InterSystems IRIS 服務器所花費的時間;包括從 Web 服務器的初始切換和識別服務器的基本請求處理。 獲取與 InterSystems IRIS 的[新]連接:分配與相應 InterSystems IRIS 服務器的連接所需的時間。指示是否創建新連接(而不是重用現有連接)。 格式請求:解析和格式化請求消息以傳輸到 InterSystems IRIS 所花費的時間。 向 InterSystems IRIS 發送請求:從 Web 服務器讀取請求數據并發送到 InterSystems IRIS 的第一個字節和最后一個字節之間所花費的時間。 在 InterSystems IRIS 中處理請求:發送到 InterSystems IRIS 的請求數據的最后一個字節與 Web 網關接收到的響應數據的第一個字節之間所花費的時間。 響應的后處理(b):當需要內容長度標頭時,它將報告通過 Web 服務器將響應數據分派回客戶端所花費的時間。 響應的后處理(c):從發送響應到 Web 網關準備好從 InterSystems IRIS 讀取響應頁腳數據之間所花費的時間。頁腳數據是 Web Gateway 和 InterSystems IRIS 之間的內部通信協議的一部分,包括控制信息(例如:更改會話保留設置的指令)。 從 InterSystems IRIS 接收頁腳:從 InterSystems IRIS 接收響應頁腳數據所花費的時間。 頁腳后處理:處理頁腳數據和響應收到的指令所花費的時間。 釋放與 InterSystems IRIS 的連接:釋放與 InterSystems IRIS 的活動連接所需的時間。 清理:釋放用于服務請求的資源并將控制權返回到托管 Web 服務器所花費的時間。 |
|
W (or w) | 在 Windows 上,如果發生崩潰,則會生成內存轉儲。該選項不區分大小寫。 在 AIX 上,使用 gencore 實用程序生成核心文件。該選項不區分大小寫。 在 Linux 或 MacOS 上,此選項區分大小寫。指定 w 使用 gcore 生成標準核心轉儲。指定 W 通過執行 gcore -a 將所有內存映射(包括共享內存)轉儲到核心文件中。 在 Unix 系統上,必須滿足以下先決條件: gcore(Linux 或 MaxOS)或 gencore (AIX) 存在于計算機上,并且可通過 PATH 環境變量使用。在 Linux 和 MacOS 系統上,gcore 的版本必須支持 -a 命令行選項。 Web 服務器工作進程需要對 Web Gateway 模塊所在目錄的寫入權限。在默認安裝中,此目錄為 /opt/webgateway/bin。 非根進程需要權限才能生成在同一用戶 ID 下運行的另一個進程的核心轉儲。在 MacOS 上,必須禁用系統完整性保護。 在 Linux 上,如果存在 Yama 安全模塊(如在 RHEL 和 Ubuntu 系統上),請執行以下命令以授予所需的權限,直到下次重新啟動: echo 0
|
sudo tee /proc/sys/kernel/yama/ptrace_scope。要永久授予此權限,請創建或編輯文件 /etc/sysctl.d/10–ptrace.conf。如果有以“kernel.yama.ptrace_scope”開頭的行,請將其更改為“kernel.yama.ptrace_scope = 0”。如果不存在這樣的行,請添加“kernel.yama.ptrace_scope = 0”,然后執行 sysctl —p。 注意:出于安全原因,建議僅臨時授予此類權限。 |