了解服務品質 (QoS) 行為和日誌記錄

本主題涵蓋 QoS 的詳細信息,包括終止事件期間的伺服器和伺服器控制器行為、故障轉移觸發器和日誌檔案內容。

QoS 終止事件

以下是伺服器和伺服器控制器在終止事件期間應如何表現。
  • 'nsd -kill' 不產生 nsd。它只產生一個kill_* 檔案。
  • 當且僅當伺服器需要重新啟動時,控制器才會產生自己的 'nsd -stacks'用於故障排除目的。
  • QoSShutdownNSD=secondsNotes.ini中設定 'nsd -stacks' 生成時間為 QoSShutdownNSD 如果伺服器在幾秒鐘內沒有完全關閉 QoSShutdownNSD 秒。此notes.ini設定用於對關閉時間過長的伺服器進行故障排除。
註:下表中,超時表示 qosprobe 伺服器加載項無法成功開啟伺服器的名稱.nsf ($Servers 視圖) QOS_PROBE_TIMEOUT 毫秒。
1 .事件和行動
事件 控制器動作 可配置?
探測 (qosprobe) 超時 伺服器在 5 分鐘後被終止並重新啟動。 dcontroller.ini:QOS_PROBE_TIMEOUT=minutes
長時間運行的應用程式逾時 伺服器在 10 分鐘後被終止並重新啟動。 dcontroller.ini:QOS_APPS_TIMEOUT=minutes
伺服器耗盡共享句柄 伺服器被終止並重新啟動。
伺服器耗盡會話表 伺服器被終止並重新啟動。
伺服器網路記憶體不足 伺服器被終止並重新啟動。
伺服器耗盡共享記憶體句柄 伺服器被終止並重新啟動。
伺服器運行時崩潰/恐慌 5 分鐘後伺服器重新啟動。
伺服器關閉時間太長(「退出」) 5 分鐘後伺服器被終止。 dcontroller.ini:QOS_SHUTDOWN_TIMEOUT=minutes
伺服器重新啟動時間太長(「重新啟動伺服器」) 伺服器在 5 分鐘後被終止並重新啟動。 dcontroller.ini:QOS_RESTART_TIMEOUT=minutes
伺服器進程異常終止 伺服器被終止並重新啟動。

QoS 故障轉移觸發器

QoS 智慧終止可能會使伺服器停機長達 20 分鐘。總停機時間可能包括大約 5 分鐘的探測逾時檢測、運行 nsd 以收集所有進程上的資料(約 3 分鐘)、終止伺服器(約 1-2 分鐘)以及重新啟動(包括門控)任務時間- 最多10分鐘)。指定在 QoS 設定為的伺服器上處理的任何新請求將在 QoS 偵測到伺服器應被智慧終止後的幾秒鐘內立即故障轉移到叢集成員。

由於故障轉移僅在已知伺服器已啟動、正在運行和正在處理時才重要,因此在以下智慧終止場景中不使用快速故障轉移功能:
  • 伺服器關閉時間太長
  • 伺服器重新啟動花費的時間太長
  • 伺服器崩潰了,崩潰後需要清理QoS
注意:您可以使用notes.ini設定停用StaticHang機制 QOS_DISABLE_FAILOVER_TRIGGER=1. With this parameter set, the triggerImmediateServerFailover 檔案仍然會建立和刪除,但伺服器不會 StaticHang 來強制故障轉移。

QoS 控制器日誌文件

QoS 將新的日誌檔案放置在Domino ®伺服器的資料目錄中。QoS 控制器日誌檔案包含與 QoS 控制器擷取或處理的各種事件相對應的詳細資訊、與 QoS 探測相關的事件、衛生伺服器重新啟動、伺服器崩潰、QoS 智慧終止以及其他雜項事件。以下各節介紹此日誌檔案、它的工作原理以及在對服務中的事件進行故障排除時如何正確讀取它。

注意:如果您正在解決伺服器問題,您可能還想向支援人員提供日誌檔案。
日誌檔案命名約定

QoS 控制器日誌檔案名稱包含格式為YYYYMMDDHHmm 的24 小時時間戳,例如:
qoscntrlr201105171528.out

此時間戳指示 QoS 控制器啟動的時間。範例檔案名稱是 2011 年 5 月 17 日下午 3:28 啟動服務的 QoS 控制器日誌。如果服務停止並再次啟動,目前的qoscntrlrYYYYMMDDHHmm.out檔案將被賦予.log副檔名和新的qoscntrlrYYYYMMDDHHmm.out 文件是用當前時間創建的。如果這些qoscntrlrYYYYMMDDHHmm.log檔案超過 14 天,則會在服務啟動時自動刪除。

日誌檔案命名約定

QoS 控制器日誌檔案名稱包含格式為YYYYMMDDHHmm 的24 小時時間戳,例如:
qoscntrlr201105171528.out

此時間戳指示 QoS 控制器啟動的時間。範例檔案名稱是 2011 年 5 月 17 日下午 3:28 啟動服務的 QoS 控制器日誌。如果服務停止並再次啟動,目前的qoscntrlrYYYYMMDDHHmm.out檔案將被賦予.log副檔名和新的qoscntrlrYYYYMMDDHHmm.out 文件是用當前時間創建的。如果這些qoscntrlrYYYYMMDDHHmm.log檔案超過 14 天,則會在服務啟動時自動刪除。

如何讀取日誌文件

在日誌檔案的開頭,顯示了 QoS 控制器的此記錄運行的常規設定資訊:
2012/08/06 06:33:34 QoS Controller: Starting QOSPipeWatcher
2012/08/06 06:33:34 QoS Controller: QOS_PROBE_TIMEOUT=5 minutes
2012/08/06 06:33:34 QOSController: QOS_SHUTDOWN_TIMEOUT=5 minutes
2012/08/06 06:33:34 QOSController: QOS_RESTART_TIMEOUT=5 minutes
2012/08/06 06:33:34 QOSController: QOS_APPS_TIMEOUT=10 minutes
2012/08/06 06:33:34 QoS Controller: nsd Program Path=/opt/hcl/notes/latest/linux/nsd.sh
2012/08/06 06:33:34 QoS Controller: QOS_RESTART_LIMIT_MAXIMUM=3
2012/08/06 06:33:34 QoS Controller: QOS_RESTART_LIMIT_PERIOD=30 minutes
2012/08/06 06:33:34 QoS Controller: QOS_NOKILL=false
2012/08/06 06:33:34 QoS Controller: QOS_MAIL_TO=test/hcl
2012/08/06 06:33:34 QoS Controller: QOS_MAIL_SMTP_SERVER=xx
這些專案以及其他一些基本專案可以在Domino ®控制器 ini 檔案 ( dcontroller.ini ) 中進行配置,該檔案位於伺服器的資料目錄中。從此時起,檔案的其餘部分包含由伺服器或其任務之一傳送至 QoS 控制器的每個訊息的日誌條目。這些訊息的格式為:
2012/05/08 00:15:09 QoS Controller: OpMsg=START Type=QOS ObjectType=ServerName ObjectValue=CN=rc45/O=dev ObjectType2=ProcessName ObjectValue2=nserver TimeDate=20120508T001506,95-04
2012/05/08 00:15:09 QoS Controller: OpMsg=START Type=SERVER TimeDate=20120508T001507,40-04
2012/05/08 00:15:21 QoS Controller: OpMsg=READY Type=SERVER TimeDate=20120508T001517,92-04
記錄到 QoS 控制器日誌檔案的所有訊息都有時間戳記。如果 QoS 控制器記錄訊息,則其格式為:
TimeDate=20120508T001506,95-04
如果 QoS 控制器的其他執行緒之一將訊息記錄到日誌檔案中,則其格式如下:
2012/05/08 00:15:21 QoS Probe: message
2012/05/08 00:15:21 QoS Applications: message
2012/05/08 00:15:21 QoS Kill: message

在日誌檔案中尋找什麼

下表顯示了在查看 QoS 控制器日誌檔案時應看到的基本日誌記錄事件的範例。

2 .基本日誌記錄事件範例
事件 日誌顯示內容的範例
伺服器正常啟動
2012/05/08 00:15:09 QoS Controller: OpMsg=START Type=QOS ObjectType=ServerName ObjectValue=CN=rc45/O=dev ObjectType2=ProcessName ObjectValue2=nserver TimeDate=20120508T001506,95-04
2012/05/08 00:15:09 QoS Controller: OpMsg=START Type=SERVER TimeDate=20120508T001507,40-04
2012/05/08 00:15:10 QoS Applications: Clearing long running apps list
2012/05/08 00:15:21 QoS Controller: OpMsg=READY Type=SERVER TimeDate=20120508T001517,92-04
2012/05/08 00:15:21 QoS Controller: Server is ready to process requests
伺服器正常關閉
2012/05/08 00:45:22 QoS Controller: OpMsg=END Type=SERVER ObjectType=Detail ObjectValue=Quit TimeDate=20120508T004516,01-04
2012/05/08 00:45:22 QoS Controller: Deactivating probe...
2012/05/08 00:45:22 QoS Controller: QoS Probe deactivated.
2012/05/08 00:45:26 QoS Controller: OpMsg=END Type=QOS ObjectType=ServerName ObjectValue=CN=rc45/O=dev TimeDate=20120508T004523,51-04
2012/05/08 00:45:27 QoS Applications: Clearing long running apps list
服務品質探測
2012/05/08 00:15:21 QoS Controller: Activating probe...
2012/05/08 00:15:21 QoS Controller: QoS Probe activated.
2012/05/08 00:15:21 QoS Probe: Starting qosprobe...
2012/05/08 00:15:25 QoS Probe: OpMsg=START, Type=PROBE
2012/05/08 00:16:25 QoS Probe: The QoS Probe is probing.
2012/05/08 00:16:25 QoS Probe: SUCCESS (156ms)
2012/05/08 00:17:25 QoS Probe: SUCCESS (16ms)
2012/05/08 00:18:25 QoS Probe: SUCCESS (31ms)
2012/05/08 00:19:25 QoS Probe: SUCCESS (16ms)
2012/05/08 00:20:26 QoS Probe: SUCCESS (15ms)
長時間運行的應用程式
2012/05/08 00:38:32 QoS Controller: OpMsg=START Type=FIXUP ObjectType=DB ObjectValue=C:\Program Files\HCL\Domino\Data\ddm.nsf TimeDate=20120508T003826,18-04
2012/05/08 00:38:32 QoS Controller: OpMsg=END Type=FIXUP ObjectType=DB ObjectValue=C:\Program Files\HCL\Domino\Data\ddm.nsf TimeDate=20120508T003829,79-04
2012/05/08 00:38:32 QoS Applications: Adding FIXUP[C:\Program Files\HCL\Domino\Data\ddm.nsf] to long running apps list
2012/05/08 00:38:32 QoS Applications: Removing FIXUP[C:\Program Files\HCL\Domino\Data\ddm.nsf] from long running apps list..
2012/05/08 00:47:42 QoS Controller: OpMsg=START Type=COMPACT ObjectType=DB ObjectValue=events4.nsf TimeDate=20120508T004740,23-04
2012/05/08 00:47:42 QoS Controller: OpMsg=END Type=COMPACT ObjectType=DB ObjectValue=events4.nsf TimeDate=20120508T004740,23-04
2012/05/08 00:47:43 QoS Applications: Adding COMPACT[events4.nsf] to long running apps list
2012/05/08 00:47:43 QoS Applications: Removing COMPACT[events4.nsf] from long running apps list

日誌檔案中伺服器崩潰的證據

QoS 控制器監控並記錄當機事件,以確保在合理的時間內執行終止和重新啟動。若要在 QoS 控制器日誌中查看這方面的證據,請在日誌檔案中搜尋文字「=CRASH」。這是一個例子:
2012/05/08 01:00:44 QoS Controller: OpMsg=CRASH Type=QOS ObjectType=ServerName ObjectValue=CN=rc45/O=dev TimeDate=20120508T010039,48-04
2012/05/08 01:00:44 QoS Controller: Server CN=rc45/O=dev has crashed.
2012/05/08 01:00:44 QoS Controller: Deactivating probe...
2012/05/08 01:00:44 QoS Controller: QoS Probe deactivated.

日誌檔案中智慧終止的證據

QoS 控制器經過編碼,可根據從伺服器或 QoS 探測接收到的資訊智慧地終止伺服器。以下是 QoS 探針逾時智慧終止在 QoS 控制器檔案中的樣子:
2012/05/08 00:31:41 QoS Probe: SUCCESS (78ms)
2012/05/08 00:32:41 QoS Probe: SUCCESS (16ms)
2012/05/08 00:37:41 The probe thread has not received a message from qosprobe within the timeout period.
2012/05/08 00:37:41 QoS Probe: The qosprobe addin has timed out, is not responding, or is not running.
2012/05/08 00:37:41 QoS Controller: Deactivating probe...
2012/05/08 00:37:41 QoS Controller: QoS Probe deactivated.
2012/05/08 00:37:43 QoS Controller: OpMsg=TIMEOUT Type=PROBE TimeDate=null
2012/05/08 00:37:43 QoS Controller: The controller has received a probe timeout.
2012/05/08 00:37:43 QoS Kill: Triggering failover...
2012/05/08 00:37:47 QoS Kill: Running nsd...
2012/05/08 00:38:12 QoS Kill: Running nsd -kill
2012/05/08 00:38:16 QoS Kill: Setting kill complete.
2012/05/08 00:38:21 QoS Kill: Restarting DominoStarter thread