目錄

簡介

必要條件

需求

採用元件

擷取資訊

診斷和偵錯日誌

QPS許可證資訊

系統統計資訊

策略生成器中的執行緒配置

致命錯誤日誌

簡介

本文檔介紹在量子策略套件(QPS)系統發生故障或崩潰時捕獲資訊必須完成的步驟。如果滿足硬體、軟體和虛擬機器要求，QPS將不太可能崩潰。

必要條件

需求

本文件沒有特定需求。

採用元件

本文中的資訊係根據以下軟體和硬體版本：

- QPS 5.5版及更高版本。

附註：某些日誌不會出現在早於QPS 5.5版的QPS版本中。

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路正在作用，請確保您已瞭解任何指令可能造成的影響。

擷取資訊

如果QPS系統發生故障，請收集以下資訊：

診斷和偵錯日誌

1. 登入到策略和計費規則功能(PCRF)客戶端虛擬機器(例如， pcrfclient01)並收集診斷資訊(例如，/opt/broadhop/installer/diag/diagnostics.sh)。

2. 登入到PCRF客戶端虛擬機器並收集調試資訊。調試資訊包括整合的QNS日誌、svn回購和QNS配置詳細資訊。確保統一日誌涵蓋系統故障的時間，並在logback.xml檔案中設定調試級別。

3. 從QPS中收集此輸出(例如，運行/opt/broadhop/installer/diag/zip_debug_info.sh，並且輸出儲存在/var/tmp/debug_info<date>.zip中)。

QPS許可證資訊

1. 登入到PCRF客戶端虛擬機器並收集QPS許可證資訊。QPS通常針對特定功能獲得許可，並且支援最大數量的併發會話。QPS也有此功能的到期日期。

2. 導航到此目錄：/etc/broadhop/license並捕獲許可證(.lic)檔案的輸出。(例如，cat /etc/broadhop/license/QUANTUM201311210402429360.lic)。

系統統計資訊

1. 捕獲系統統計資訊(示例：CPU、記憶體、磁碟利用率)。

2. 登入到PCRF客戶端虛擬機器並收集輸出。示例： /opt/broadhop/control/top_qps.sh

3. 登入到對應的虛擬機器(例如pcrfclient0x、lb0x、qns0x)並捕獲以下系統統計資訊：
cat /proc/meminfo >已分配的記憶體資訊

free -s 60 >每一分鐘的記憶體統計資訊

vmstat 1 > CPU狀態每分鐘

ps -aux | head -10 >前10個消耗大部分CPU使用率的進程詳細資訊

swapon -s >每個裝置的交換使用摘要

.du -a |排序 — n -r | head -n 10 >前10個檔案/目錄佔用更多空間

4. 登入到sessionmgr虛擬機器並收集mongostat和mongotop的輸出，這將有助於排查問題是否與資料庫相關。

策略生成器中的執行緒配置

登入到策略生成器，然後導航到Reference Data > System-1 > Plugin Configurations > Threading Configuration。

TPS的執行緒數可能從40到50不等，但少於1,000。可以配置的最大執行緒數是50。如果增加執行緒數，這將影響系統效能。

致命錯誤日誌

當系統發生故障時，QPS將生成一個錯誤日誌，其中包含發生致命錯誤時進程的狀態。致命錯誤或致命異常錯誤導致程式中止。

致命錯誤日誌包括以下資訊：

- 導致致命錯誤的操作異常或訊號

- 版本和配置資訊

- 引發致命錯誤的執行緒和執行緒堆疊跟蹤的詳細資訊

- 正在運行的執行緒及其狀態的清單

- 有關堆的摘要資訊

- 已載入的原生庫的清單

- 命令列引數

- 環境變數

- 有關作業系統(OS)和中央處理器(CPU)的詳細資訊

預設日誌檔名遵循以下格式： hs_err_pid<pid>.log，並在相應的Java進程啟動的工作目錄中生成。範例：使用者啟動QNS進程時使用者的工作目錄。

如果您不知道工作目錄，請在系統中搜尋名為hs_err_pid*.log的檔案，並在發生錯誤時檢查該檔案是否匹配。

完成以下步驟，指定致命錯誤的位置：

1. 登入到pcrfclient01虛擬機器

2. 開啟jvm.conf(例如，vi /etc/broadhop/pcrf/jvm.conf)。

3. 將選項： -XX:ErrorFile=<directory>/<file-name>%p.log新增到清單中，並確保指定的目錄路徑存在，並且使用者QNS對該目錄具有完全許可權。示例： -X:ErrorFile=/home/qns/fatal_error%p.log

4. 如果pcrfclient01:/etc/broadhop中的conf檔案與運行QNS服務的VM上/etc/broadhop中的conf檔案不同步，則「syncconfig.sh」命令可能會導致許多問題。syncconfig.sh將獲取pcrfclient01:/etc/broadhop conf檔案，並覆蓋運行QNS的VM上/etc/broadhop中的conf檔案。
警告：synconfig.sh命令將獲取pcrfclient01:/etc/broadhop conf檔案，並覆蓋運行QNS服務的虛擬機器（例如iomgr01、iomgr02、qns01、qns02等）上/etc/broadhop中的所有conf檔案。

5. 重新啟動QNS應用程式並輸入命令restartall.sh