概要
このドキュメントでは、Quantum Policy Suite(QPS)システムで障害またはクラッシュが発生した際に必要となる情報を収集する手順を説明します。 ハードウェア、ソフトウェア、および仮想マシンの要件が満たされていれば、QPS がクラッシュすることはないはずです。
前提条件
要件
このドキュメントに関しては個別の要件はありません。
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づくものです。
注: QPS リリース 5.5 より前の QPS リリースでは、一部のログが表示されません。
本書の情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。 このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。 稼働中のネットワークで作業を行う場合、コマンドの影響について十分に理解したうえで作業してください。
情報の収集
QPS システム障害が発生した場合は、次の情報を収集してください。
診断とデバッグ ログ
- ポリシー/課金ルール機能(PCRF)クライアント仮想マシン(例:pcrfclient01)にログインし、診断情報(例:/opt/broadhop/installer/diag/diagnostics.sh)を収集します。
- PCRF クライアント仮想マシンにログインし、デバッグ情報を収集します。 デバッグ情報には、統合 QNS ログ、svn repo、および QNS 構成の詳細情報が含まれます。 統合ログがシステム障害発生時をカバーしていること、logback.xml ファイルでデバッグ レベルが設定されていることを確認してください。
- QPS からデバッグ情報の出力を収集します(例:opt/broadhop/installer/diag/zip_debug_info.sh を実行すると、その出力は /var/tmp/debug_info<date>.zip に格納されます)。
- システム障害が発生した QPS 仮想マシン インスタンスにログインします (例:pcrfclient0x、lb0x、qns0x、portal0x)。 QNS ログを収集し、QNS ログがシステム障害発生時をカバーしていることを確認します (例:cat /etc/broadhop/license/QUANTUM201311210402429360.lic)。
QPS ライセンス情報
- PCRF クライアント仮想マシンにログインし、QPS ライセンス情報を収集します。 通常、QPS は特定の機能に対してライセンス供与されており、QPS がサポートする同時セッション数には上限があります。 また、QPS には該当する機能のライセンス期限日も設定されています。
- ディレクトリ /etc/broadhop/license に移動して、ライセンス(.lic)ファイルの出力を収集します (例:cat /etc/broadhop/license/QUANTUM201311210402429360.lic)。
システム統計情報
- システム統計情報(例: CPU、メモリ、ディスク使用率)を収集します。
- PCRF クライアント仮想マシンにログインし、出力を収集します。 例: /opt/broadhop/control/top_qps.sh
- 該当する仮想マシン(例:pcrfclient0x、lb0x、qns0x)にログインし、次のシステム統計情報を収集します。
cat /proc/meminfo > 割り当てメモリ情報
free -s 60 > 1 分ごとのメモリ統計情報
vmstat 1 > 1 分ごとの CPU ステータス
ps -aux | head -10 > CPU 使用率が最も高い上位 10 件のプロセスに関する詳細
swapon -s > デバイスごとのスワップ使用状況の要約
.。 du -a | sort -n -r | head -n 10 > スペースの使用量が高い上位 10 件のファイル/ディレクトリ
- sessionmgr 仮想マシンにログインし、mongostat および mongotop の出力を収集します。これらの出力は、問題がデータベースに関連しているかどうかをトラブルシューティングするのに役立ちます。
Policy Builder でのスレッド設定
Policy Builder にログインし、[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 という名前のファイルを検索し、そのファイルでエラー発生時と一致する時刻を調べてください。
致命的なエラーが発生した場所を特定するには、次の手順に従います。
- pcrfclient01 仮想マシンにログインします。
- jvm.conf を開きます(例:vi /etc/broadhop/pcrf/jvm.conf)。
- オプション --XX: ErrorFile=<directory>/<file-name>%p.log をリストに追加して、指定したディレクトリ パスが存在すること、ユーザ QNS にそのディレクトリに対するフル アクセス権が割り当てられていることを確認します。 例: --X: ErrorFile=/home/qns/fatal_error%p.log
- pcrfclient01:/etc/broadhop 内の設定ファイルが、QNS サービスを実行している VM 上の /etc/broadhop 内にある設定ファイルと同期していない場合、syncconfig.sh コマンドを実行すると多数の問題が発生する可能性があります。 syncconfig.sh は、pcrfclient01:/etc/broadhop 内の設定ファイルを取り、QNS サービスを実行している VM 上の /etc/broadhop 内にある設定ファイルを上書きします。
警告: syncconfig.sh コマンドは、pcrfclient01:/etc/broadhop conf ファイルを取り、QNS サービスを実行している仮想マシン(iomgr01、iomgr02、qns01、qns02 など)上の /etc/broadhop 内にあるすべての設定ファイルを上書きします。
- QNS アプリケーションを再起動して、コマンド restartall.sh を入力します。