协作 : 思科统一客户语音门户

报告服务器概述和排除故障的CVP

2016 年 10 月 24 日 - 机器翻译
其他版本: PDFpdf | 英语 (2015 年 8 月 22 日) | 反馈

简介

本文给予报告服务器的思科统一客户语音门户(CVP)的概述并且提供故障排除步骤。

  • 报告的服务接收报告从Cisco Unified IP Interactive Voice Response (IVR)服务、会话初始化协议(SIP)服务(若被采用)和Cisco Unified CVP语音XML (VXML)服务器的数据。服务然后变换并且写数据对报告数据库的Informix公司,担当历史报告在呼叫中心环境。
  • 报告的服务解析那些消息,然后转换他们到批可适用的结构化查询语言(SQL)语句,并且执行他们到SQL数据库通过Java数据库连通性(JDBC) API。

贡献用Taylan Kucuk和拉米罗Amaya, Cisco TAC工程师。

数据库表

CVP表分类如下:

  • 呼叫表
  • VXML表
  • 摘要/聚合表
  • 查找和参考表
  • 礼貌回拨表

呼叫开始在呼叫表和与VXMLSession表连接由CallGUID列。

注意:Unified CVP时间被记录作为UTC时间;例外是dbdatetime,被记录作为本地时间。Localtimezoneoffset是列在包含分钟偏移量编号从UTC的为了派生本地时间的呼叫表里。这可以使用作为间隔。

摘要和聚合表

报告服务器的统一的CVP包括从呼叫和VXMLElement表的会聚数据到新的汇总表里的一概略的进程。

116379-trouble-cvp-server-01.png

报告的汇总表是:

  • ApplicationSummary_15
  • ApplicationSummary_Daily
  • ApplicationSummary_Weekly
  • ApplicationSummary_Monthly
  • Call_15
  • Call_Daily
  • Call_weekly

表创建根据此日程:

  • 每天表填充在15个分钟表后的一天。
  • 一旦那些充分填充在有问题的的周每周表从每天表填充。
  • 一旦那些充分填充在有问题的的月每月表从每周表填充。

请参阅Cisco Bug ID CSCue65248, “报告汇总表的CVP没有填充”。在报告服务器的CVP,汇总表没有填充。问题由每月摘要的脚本导致,在CVP 9.0介绍。

CVP 8.x和9.0报告的数据库之间的差异

Windows 2008 R2服务器仅支持报告数据库的统一的CVP 9.0(1)。由于Windows支持报告数据库的统一的CVP 8.x 2003年,没有直接更新对报告数据库的统一的CVP 9.0(1)。

关于迁移说明,请参阅安装指南。注意, :

  • 如果计算机已经作为域的部分,报告的服务器组件不可能安装。
  • 报告的服务器组件在是域的一部分的服务器不可能安装。组件的安装要求本地安全策略在组策略控制台比同样安全策略获得更高的优先权,不是可能的,如果服务器是域的一部分。然而,因为这不要求在服务器,将运行的任何本地策略在安装以后,服务器可以被添加回到域。

在发表物安装任务的差异包括:

  • 4.x,报告数据库的7.x -登陆作为Informix公司用户,并且运行这些批处理文件:
    • ReportingRunAsInformix.bat.
    • ReportingRunAsCVP_DbAdmin.bat.
  • 报告数据库的8.x -登陆作为Informix公司用户,并且运行此批处理文件:
    • CVP_Database_Config.bat.
  • 报告数据库的9.x -作为发表物安装过程一部分,批处理文件没有要求。

在用户的一关键区别是,与9.x,那儿不无Informix公司用户。反而, cvp_dbadmin用户是数据库的所有者。

报告服务器超载

报告服务器的Cisco MCS-7845能处理420个消息每秒。

请使用此等式为了确定报告消息编号生成每每VoiceXML应用程序的秒:

A# = %CPS * CPS * MSG

where:

  • %CPS =使用此VoiceXML应用程序呼叫的百分比
  • CPS =呼叫数量每秒
  • MSG =报告此应用程序生成的消息编号

请使用此等式为了添加每应用程序生成的消息:

A(total) = A1+ A2+?..+An

那里A(total)是报告消息总数生成每秒由您的VoiceXML应用程序。

报告消息编号每个元素或活动在表17思科统一客户语音门户(CVP)解决方案参考网络设计(SRND)版本9.0(1)

为了简化,您能使用此查询为了计算消息平均数写入对一秒钟的vxmlsession表:

select count(*)/86400 from vxmlsession where dbdatetime between 
'2012-12-12 00:00:00' and '2012-12-13 00:00:00'"

运行此查询这14个表:

  1. 呼叫
  2. CallEvent
  3. CallICMInfo
  4. OutgoingECCVariable (涉及的CCB)
  5. VXMLCustomContent
  6. VXMLElement
  7. VXMLElementDetail
  8. VXMLElementFlag
  9. VXMLError
  10. VXMLHotEvent
  11. VXMLHotLink
  12. VXMLSession
  13. VXMLSessionVariable
  14. VXMLVoiceInteractDetail

添加结果为了获取消息平均数每报告的服务器接收的秒。

排除故障

如果超载报告的服务器,报告的日志包含这些警报:

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个消息。以后限制达到,所有新建的消息详细信息信息丢弃。

注意:对于UCS平台,您必须修改接收缓冲区数量设置在报告的服务器的为了最大化在虚拟平台的全双工报告和呼叫负载。如果没有修改此设置,在您安装OS后,消息在CallServer备份,并且消息队列得填满。您然后看到在Calls Per Second (CPS)速率的暴跌。

采取这些步骤为了设置接收缓冲区数量在报告的服务器TCP设置的到4096 (最大) :

  1. 在报告的服务器上,请点击Control Panel > Network连接
  2. 用鼠标右键单击网络连接
  3. 单击 Advanced 选项卡。
  4. 在属性选项下,请选择接收缓冲区编号
  5. 在值文本框中,输入4096。
  6. 重新启动报告的服务器。

    参考Unified CVP的虚拟化:其他信息的UCS网络配置

数据库连接失败

如果数据库连接发生故障,报告的服务器派出简单网络管理协议(SNMP)警报并且启动存储消息到一个不变文件(%CVP_HOME% \ tmp \ CVPReporting.tmp)至一用户指定的限制。在此时间,在限制的Service.When 75%的报告的服务器逗留被到达,警告写入到日志文件。当100%限制达到时, SNMP警报被派出,并且报告的服务器进入部分服务。其中任一新建的消息也许丢弃。

当数据库连接恢复时,报告的服务器进入恢复模式并且更改其状态对部分服务(如果已经不在该状态)。它然后开始读取消息从%CVP_HOME% \ tmp \ CVPReporting.tmp文件和承诺他们给数据库。根据文件的大小,它可能耗费几小时承诺所有数据给数据库。进来在恢复期间的新的消息在内存缓冲。

不管服务器的模式或状态,有,然而,限制对报告的服务器能缓冲的通讯数量, :

  • 当缓冲的消息数量到达100,000时, SNMP警报被派出作为对用户的一警告。
  • 在200,000个消息,另一SNMP警报被派出,所有的详细信息新建的消息丢弃,并且仅基本数据类似呼叫、呼叫事件和会话信息保持。在200,000个消息, (如果已经不在该状态),报告的服务器也更改其状态对部分服务。
  • 当缓冲的消息总数到达300,000时,另一SNMP警报被派出,并且所有新建的消息从那时起丢弃。
  • 当通讯数量在内存丢包的返回在50,000以下时,陈述的SNMP警报被派出队列大小是回到正常,并且报告的服务器的状态回到在使用中。

如果一个不变文件在启动存在,报告的服务器在使用中部分服务坚持并且进入恢复模式。

未完成的呼叫

当恢复未完成的呼叫时,报告的服务器可以也去部分服务。

此消息在报告的服务器日志被看到:

%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文件为了避免恢复进程和带来报告的服务器上一步。此步骤描述如何绕过恢复进程:

  1. 终止CVP呼叫服务器服务。
  2. 导航到%CVP_HOME% \ tmp。
  3. 重命名CVPReporting.tmp文件。
  4. 开始CVP呼叫服务器服务。

请参阅Cisco Bug ID CSCtu43570, “CVPReporting.tmp在大小限制之外增长并且不是被恢复的及时的”。因为文件不可能完全写入,报告数据的新的呼叫丢失。硬盘驱动器得填满,最终导致一个‘出于磁盘空间’情况。

此问题在Unified CVP报告数据库的8.5(1)SR18和8.5(1)SR6修复。

跟踪级别和日志文件

编辑<install_dir> \思科\ CVP \ conf \ reporting.properties文件为了设置在报告的服务器日志的跟踪级别。示例如下:

RPT.traceMask = 0x810000
RPT.logLevel = DEBUG

聚合器调试和日志

在ciscoadmin数据库的摘要使用两表:agg_schedule和agg_statements。

<CVP_HOME> \日志\ reporting.txt文件显示聚合是否运行了。

此步骤描述如何启用aggregator.bat工作的另外的跟踪:

  1. 等待至少15分钟。
  2. 编辑<CVP_HOME> \ bin \ aggregator.bat文件。更改.bat文件的值从此默认的:

    echo call sp_sched_agg(); | dbaccess ciscoadmin

    到:

    echo call sp_sched_agg('D'); | dbaccess ciscoadmin

调试日志在CVP_HOME> \日志\ Agg_Debug.out文件写入。

数据库空间问题

注意:此空间问题在不同的实施被看到了。由于对此问题的解决方案介入Informix公司深刻的技术知识,请与Cisco技术支持中心(TAC)联系,如果遇到此问题。

此步骤描述故障排除流程:

  1. 升级对报告数据库的Unified CVP 8.0(1)。

  2. 运行CVP_Database_Config.bat文件,并且请参阅问题:

    116379-trouble-cvp-server-02.jpg

  3. 查看c:\temp\cvpupg.sql文件。内容是:

    call upg_est(); UNLOAD to "c:/temp/upgvars.out" SELECT estimate1,estimate2,
    retention,log_space_needed,minlog,maxlog FROM cvp_data:upg_estimate;
  4. 对数据库的连接。当您尝试检查upg_estimate表时,不存在。

    116379-trouble-cvp-server-03.jpg

  5. 检查c:\Temp\CiscoUnifiedCVPDB.log文件,并且请参阅这些错误:

    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.
  6. 检查upg_est.sql。upg_estimate表的内容是:

     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
          );
    但是,此表不得到创建。

  7. 连接对Dbaccess,并且运行此查询:

    SELECT COUNT(*) FROM systables     WHERE tabname='upg_estimate';
    查询返回0,因此应该创建表。

  8. 设法手工创建表在Dbaccess :

    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
  9. 运行onstat - d命令,并且验证最后大块没有足够的空间:

    116379-trouble-cvp-server-04.jpg

  10. 登陆到CVP Informix公司方框作为‘Informix公司’用户。

  11. 创建一新的空文件呼叫new_space在E:\ifmxdata\cvp_db_wp17cvprpt1a\下。打开prompt命令,并且输入这些命令。请勿复制和插入:

    onspaces -a cvp_data_dbspace -
    E:\ifmxdata\cvp_db_wp17cvprpt1a\cvp_data_dbspace\new_space -o 0 -s 10240

    注意- s在KBs表示新的大块的大小和给。对于100 MB,它是100 * 1024 = 102400。

    此命令添加dbspace 100 MB到CVP Informix服务器。

  12. 重新运行CVP_Database_Config.bat文件。它将适当地当前运作。

此示例显示如何连接到与Dbaccess的数据库:

116379-trouble-cvp-server-05.png

116379-trouble-cvp-server-06.png



Document ID: 116379