瞭解服務品質 (QoS) 行為和記載

本主題涵蓋服務品質的詳細資料,包括結束 (kill) 事件期間的伺服器和伺服器控制器行為、失效接手觸發及日誌檔內容。

服務品質結束事件

下列是伺服器和伺服器控制器在結束事件期間的運作方式。
  • 'nsd -kill' 不會產生 NSD。它會只產生 kill_* 檔案。
  • 唯有當伺服器應重新啟動時,控制器才會產生它自己的 'nsd -stacks' 作為疑難排解之用。
  • notes.ini 內已設定 QoSShutdownNSD=seconds 時,如果伺服器未在 QoSShutdownNSD 秒內完全關閉,則每隔 QoSShutdownNSD 秒就會產生 'nsd -stacks'。這項 notes.ini 設定是用來對關機花費時間太長的伺服器進行疑難排解。
註: 在下列表格中,逾時指出 qosprobe 伺服器增益集無法在 QOS_PROBE_TIMEOUT 毫秒內順利開啟伺服器的 names.nsf($伺服器 視圖)。
1. 事件及動作
事件 控制器動作 可配置?
探測 (qosprobe) 逾時 伺服器在 5 分鐘之後結束,並重新啟動。 dcontroller.ini:QOS_PROBE_TIMEOUT=minutes
長時間執行的應用程式逾時 伺服器在 10 分鐘之後結束,並重新啟動。 dcontroller.ini:QOS_APPS_TIMEOUT=minutes
伺服器用盡共用控點 伺服器結束並重新啟動。
伺服器用盡階段作業表格 伺服器結束並重新啟動。
伺服器用盡網路記憶體 伺服器結束並重新啟動。
伺服器用盡共用記憶體控點 伺服器結束並重新啟動。
伺服器在執行時當機/損壞 伺服器在 5 分鐘之後重新啟動。
伺服器關機花費時間太長 ('quit') 伺服器在 5 分鐘之後結束。 dcontroller.ini:QOS_SHUTDOWN_TIMEOUT=minutes
伺服器重新啟動花費時間太長 ('重新啟動 伺服器') 伺服器在 5 分鐘之後結束,並重新啟動。 dcontroller.ini:QOS_RESTART_TIMEOUT=minutes
伺服器程序異常地終止 伺服器結束並重新啟動。

服務品質失效接手觸發

服務品質智慧型結束可讓伺服器關閉長達 20 分鐘。關閉時間總計包括大約 5 分鐘的探測逾時偵測、執行 NSD 來收集所有程序的資料(~3 分鐘)、結束伺服器(~1-2 分鐘)以及重新啟動(包括閘門作業時間 - 最多 10 分鐘)。任何指定要在服務品質設為的伺服器上處理的新要求,將在服務品質偵測到伺服器應進行智慧型結束時,在幾秒鐘內立即失效接手至叢集成員。

失效接手只有在確知伺服器在啟動、執行及處理中時才有重大關係,因此在下列智慧型結束實務範例中並未使用快速失效接手功能:
  • 伺服器關機花費時間太長
  • 伺服器重新啟動花費時間太長
  • 伺服器已當機,而且當機之後需要清除服務品質
註: 您可以使用 notes.ini 設定 QOS_DISABLE_FAILOVER_TRIGGER=1,來停用 StaticHang 機制。已設定此參數時,仍會透過 StaticHang 建立及刪除 triggerImmediateServerFailover 檔案,但是伺服器不會強制執行失效接手。

服務品質控制器日誌檔

服務品質會將新的日誌檔放在 Domino® 伺服器的資料目錄中。服務品質控制器日誌檔包含的詳細資料對應於服務品質控制器所擷取或處理的各種事件、與服務品質探測相關的事件、清理伺服器重新啟動、伺服器當機、服務品質智慧型結束及其他細項事件。下列各節說明此日誌檔、其運作方式,以及在對服務中的事件進行疑難排解時,如何適當地閱讀它。

註: 如果您要與支援中心一起進行伺服器問題的疑難排解,也可以提供日誌檔給它們。
日誌檔命名慣例

服務品質控制器日誌檔名稱包含 24 小時的時間戳記,其格式為 YYYYMMDDHHmm,例如:
qoscntrlr201105171528.out

此時間戳記指出啟動服務品質控制器的時間。範例檔名將是 2011 年 5 月 17 日下午 3:28 啟動的服務所使用的服務品質控制器日誌。如果服務已停止並重新啟動,則會將 qoscntrlrYYYYMMDDHHmm.out 副檔名給與現行 .log 檔案,並以現行時間建立新的 qoscntrlrYYYYMMDDHHmm.out 檔案。當服務啟動時,如果這些 qoscntrlrYYYYMMDDHHmm.log 檔案已超過 14 天,則會自動刪除它們。

日誌檔命名慣例

服務品質控制器日誌檔名稱包含 24 小時的時間戳記,其格式為 YYYYMMDDHHmm,例如:
qoscntrlr201105171528.out

此時間戳記指出啟動服務品質控制器的時間。範例檔名將是 2011 年 5 月 17 日下午 3:28 啟動的服務所使用的服務品質控制器日誌。如果服務已停止並重新啟動,則會將 qoscntrlrYYYYMMDDHHmm.out 副檔名給與現行 .log 檔案,並以現行時間建立新的 qoscntrlrYYYYMMDDHHmm.out 檔案。當服務啟動時,如果這些 qoscntrlrYYYYMMDDHHmm.log 檔案已超過 14 天,則會自動刪除它們。

如何讀取日誌檔

在日誌檔開頭,會出現服務品質控制器這次記載執行作業的一般配置資訊:
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) 中進行配置,您可在伺服器的資料目錄中找到此檔案。該檔案此後的其餘部分,對於伺服器或其中一項作業傳送至服務品質控制器的每一則訊息,各包含一個日誌項目。這些訊息的格式為:
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
記載至服務品質控制器日誌檔的所有訊息都有時間戳記。如果服務品質控制器記載訊息,則它的格式為:
TimeDate=20120508T001506,95-04
如果其中一個服務品質控制器的其他執行緒將訊息記載至日誌檔,則它的格式為:
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

可在日誌檔中尋找的內容

本表顯示當您查看服務品質控制器日誌檔時,應該會看到的基本記載事件的範例。

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

日誌檔中伺服器當機的證據

服務品質控制器會監視和記載當機事件,以確保會在合理的時間量內執行結束和重新啟動。若要在服務品質控制器日誌中查看此事件的證據,請在日誌檔中搜尋 "=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.

日誌檔中智慧型結束的證據

服務品質控制器是編寫成根據它從伺服器或從服務品質探測中接收的資訊,對控制器執行智慧型結束。以下是「服務品質探測」逾時的智慧型結束在服務品質控制器檔案中的顯示內容:
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