このドキュメントでは、Cisco Unified Customer Voice Portal(CVP)レポート サーバの概要とトラブルシューティングの手順を示します。
CVP 表はとして分類されます:
コール表のコール 開始するは CallGUID カラムによって VXMLSession 表にリンクされ。
新しい要約テーブルにコールおよび VXMLElement 表からのデータを集約する統一された CVP レポート サーバーはサマリ プロセスが含まれています。
レポート要約テーブルは次のとおりです:
表はこのスケジュールに基づいていました作成されます:
参照して下さい Cisco バグ ID CSCue65248 を、「CVP レポート要約テーブル読み込まれません」。 CVP レポート サーバーでは、要約テーブルは読み込まれません。 問題は CVP 9.0 でもたらされた月例要約のためのスクリプトによって引き起こされています。
データベースを報告する統一された CVP 9.0(1) は Windows 2008 R2 サーバでだけサポートされます。 データベースを報告する統一された CVP 8.x が Windows 2003 によってサポートされるので、直接アップデートはデータベースを報告する統一された CVP 9.0(1) へありません。
移行手順に関しては、インストール ガイドを参照して下さい。 次の注意してください。
ポスト インストール タスクの違いは下記のものを含んでいます:
ユーザの重要な違いは、9.x と、Informix これ以上のユーザがないことです。 その代り、cvp_dbadmin ユーザはデータベースのオーナーです。
Cisco MCS-7845 レポート サーバーは毎秒 420 のメッセージを処理できます。
各 VoiceXML アプリケーションのための毎秒生成されるレポート メッセージの数を判別するためにこの同等化を使用して下さい:
A# = %CPS * CPS * MSG
ここで、
各アプリケーションによって生成されるメッセージを追加するためにこの同等化を使用して下さい:
A(total) = A1+ A2+?..+An
A(total)が VoiceXML アプリケーションによって毎秒生成されるレポート メッセージの総数であるところ。
要素またはアクティビティごとのレポート メッセージの数は Cisco Unified Customer Voice Portal (CVP)ソリューション リファレンス ネットワーク デザイン(SRND)リリース 9.0(1) の表 17 にあります。
わかりやすくするために、1秒の間 vxmlsession 表に書き込まれるメッセージの平均数を計算するためにこのクエリを使用できます:
select count(*)/86400 from vxmlsession where dbdatetime between
'2012-12-12 00:00:00' and '2012-12-13 00:00:00'"
この 14 の表に対してこのクエリを実行して下さい:
レポート サーバーによって受け取った毎秒メッセージの平均数を得るために結果を追加して下さい。
レポート サーバーが過剰になる場合、レポート ログはこれらのアラートが含まれています:
CVP_8_0_RPT-1-REPORTING_DB_ALERT_RAISE ALERT!!!!! The total JDBC messages queue
size has exceeded the critical limit 300000 .... All the JDBC messages will
be dropped. [id:4014]
CVP_8_0_RPT-1-REPORTING_DB_ALERT_RAISE ALERT!!!!! The total JDBC messages queue
size has exceeded the max limit 250000 .... Some of the JDBC messages may be
dropped. [id:4014]
レポート サーバーが部分的なサービスに行く複数のシナリオがあります。 ただし、部分的なサービスは問題があることを必ずしも意味します。
レポート サーバーが壊れた場合、レポート サーバーに向かうメッセージはコール サーバによって、メモリで、200,000 までのメッセージ バッファリングされます。 後制限が達すること、すべての新しいメッセージ詳細情報は廃棄されます。
4096 にレポート サーバー TCP 設定のレシーブ バッファの数を設定 するためにこれらのステップを踏んで下さい(最大値):
データベース接続が失敗した場合、レポート サーバーは簡易ネットワーク管理プロトコル(SNMP)アラートを送信し、ユーザが指定する制限まで耐久性があるファイル(%CVP_HOME% \ tmp \ CVPReporting.tmp)にメッセージを保存し始めます。 この時間の間に、制限の Service.When 75% のレポート サーバー滞在はログ ファイルに、警告書かれています達します。 制限の 100% が達するとき、SNMP アラートは送信され、レポート サーバーは部分的なサービスに入ります。 どの新しいメッセージでも廃棄されるかもしれません。
データベース接続が戻って来るとき、レポート サーバーは復旧モードに(その状態にまだあっていなければ)入り、部分的なサービスに状態を変更します。 それはそれから %CVP_HOME% \ tmp \ CVPReporting.tmp ファイルからのメッセージを読み込み、データベースに託し始めます。 ファイルのサイズによっては、データベースにデータすべてを託すために時間かかるかもしれません。 リカバリの間に入る新しいメッセージはメモリでバッファリングされます。
しかしサーバのモードか状態に関係なくバッファリング レポート サーバーができるメッセージ数への制限があります:
始動で存在 する耐久性があるファイルが部分的なサービスにレポート サーバーとどまり、復旧モードに入れば。
レポート サーバーはまた部分的なサービスに未完成コールを回復とき行くことができます。
このメッセージはレポート サーバー ログで見られます:
%CVP_8_0_RPT-1-REPORTING_STATE_CHANGE: REPORTING Subsystem state changed to
RPT SS RPT1 changes its state to Partial Service cause Unfinished calls
recovery started [id:4001]
ログはまたこれらのコールのリカバリについての情報が含まれています。 リカバリプロセスが長時間をかけることができることを覚えていて下さい!
%CVP_8_0_RPT-6-REPORTING_INFO: Recover Uncompleted call: 73
CallGUID:90DAAAC91000013C01075FC253EF37A4 Event Id: 11 CauseId: 0 [id:4000]
...
%CVP_8_0_RPT-6-REPORTING_INFO: Recover Uncompleted call:
129 CallGUID:673A58361000013C087A209E53EF37A5 Event Id: 0 CauseId: 0 [id:4000]
未完成コールが完了すれば、これらのメッセージは見られ、レポート サーバーは稼働中状態に戻ります:
%CVP_8_0_RPT-6-REPORTING_INFO: Recover CallRegistry finished [id:4000]
%CVP_8_0_RPT-6-REPORTING_INFO: initKeepAliver() -- processed unfinished calls
[id:4000]
%CVP_8_0_RPT-1-REPORTING_STATE_CHANGE: REPORTING Subsystem state changed to RPT
SS RPT1 changes its state to In Service cause Normal Operation [id:4001]
リカバリプロセスを避け、レポート サーバー稼働中を思い出させるために %CVP_HOME% \ tmp \ CVPReporting.tmp ファイルを取除くことができます。 このプロシージャはリカバリプロセスをバイパスする方法を記述します:
参照して下さい Cisco バグ ID CSCtu43570 を、「CVPReporting.tmp なり、サイズ制限を越えて回復時機を得ている」。 新しいコール レポート データはファイルが完全に読み込むことができなかったので失われました。 「ディスク領域」から結局状態を引き起こしたハード ドライブはいっぱいになっていました。
この問題は統一された CVP 8.5(1)SR18 および 8.5(1)SR6 レポート データベースで解決されました。
レポート サーバー ログのトレース レベルを設定 するために <install_dir> \ Cisco \ CVP を\ CONF \ reporting.properties ファイル編集して下さい。 次に例を示します。
RPT.traceMask = 0x810000
RPT.logLevel = DEBUG
要約 使用 ciscoadmin データベースの 2 つの表: agg_schedule および agg_statements。
<CVP_HOME> \ログ\ reporting.txt ファイルは集計が動作したかどうか示します。
このプロシージャは aggregator.bat ジョブのための追加トレースを有効に する方法を記述します:
echo call sp_sched_agg(); | dbaccess ciscoadmin
次のようにします。
echo call sp_sched_agg('D'); | dbaccess ciscoadmin
デバッグ ログは CVP_HOME> \ログ\ Agg_Debug.out ファイルに書かれます。
このプロシージャはトラブルシューティング プロセスを説明します:
call upg_est(); UNLOAD to "c:/temp/upgvars.out" SELECT estimate1,estimate2,
retention,log_space_needed,minlog,maxlog FROM cvp_data:upg_estimate;
23:41:54 Wed Dec 19 2012 : dbaccess cvp_data
C:\Cisco\CVP\informix_frag\upg_est.sql
Database selected.
312: Cannot update system catalog (sysprocbody).
131: ISAM error: no free disk space
Error in line 26
Near character position 11
23:41:54 Wed Dec 19 2012 : dbaccess cvp_data c:/temp/cvpupg.sql 2>NUL
Database selected.
206: The specified table (upg_estimate) is not in the database.
SELECT COUNT(*)しかし、この表は作成されません。
INTO tmp_int
FROM systables
WHERE tabname='upg_estimate';
IF tmp_int=0 THEN
CREATE TABLE upg_estimate (
estimate1 INTERVAL HOUR TO MINUTE,
estimate2 INTERVAL HOUR TO MINUTE,
retention SMALLINT,
log_space_needed INTEGER,
minlog INTEGER,
maxlog INTEGER
);
SELECT COUNT(*) FROM systables WHERE tabname='upg_estimate';クエリは 0 を戻します、従って表は作成する必要があります。
CREATE TABLE upg_estimate (エラー メッセージを受け取ります:
estimate1 INTERVAL HOUR TO MINUTE,
estimate2 INTERVAL HOUR TO MINUTE,
retention SMALLINT,
log_space_needed INTEGER,
minlog INTEGER,
maxlog INTEGER
);
261: Cannot Create file for table (informix.upg_estimate).
131: ISAM error: no free disk space
onspaces -a cvp_data_dbspace -
E:\ifmxdata\cvp_db_wp17cvprpt1a\cvp_data_dbspace\new_space -o 0 -s 10240
このコマンドは CVP Informix サーバに dbspace の 100 MB を追加します。
この例に DBAccess とデータベースに接続する方法を示されています: