Colaboração : Portal Cisco Unified Customer Voice

Vista geral e Troubleshooting do server do relatório CVP

14 Outubro 2016 - Tradução por Computador
Outras Versões: Versão em PDFpdf | Inglês (22 Agosto 2015) | Feedback

Introdução

Este documento dá uma vista geral do server do relatório do Portal Cisco Unified Customer Voice (CVP) e oferece passos de Troubleshooting.

  • O serviço do relatório recebe dados do relatório do serviço de Cisco Unified IP Interactive Voice Response (IVR), o serviço do Session Initiation Protocol (SIP) (se usado), e Cisco unificou o server da Voz XML CVP (VXML). O serviço então transforma e redige os dados a Informix que relata o base de dados, que serve como o relatório histórico em um ambiente do centro de chamadas.
  • O serviço do relatório então analisa gramaticalmente aquelas mensagens, converte-as em grupos de indicações de língua de consulta estruturada (SQL) aplicáveis, e executa-as em um base de dados SQL através da conectividade de base de dados de java (JDBC) API.

Contribuído por Taylan Kucuk e por Ramiro Amaya, engenheiros de TAC da Cisco.

Tabelas de base de dados

As tabelas CVP são categorizadas como:

  • Tabelas do atendimento
  • Tabelas VXML
  • Tabelas do sumário/agregado
  • Tabelas da consulta e da referência
  • Tabelas da rechamada da cortesia

O começo dos atendimentos na tabela do atendimento e é ligado à tabela de VXMLSession pela coluna de CallGUID.

Nota: O CVP unificado DateTimes é gravado como o tempo UTC; a exceção é o dbdatetime, que é gravado como um horário local. Localtimezoneoffset é uma coluna na tabela do atendimento que contém o número de offset dos minutos do UTC a fim derivar o horário local. Isto pode ser usado como um intervalo.

Tabelas do sumário e do agregado

O server unificado do relatório CVP inclui um processo sumário que agregue dados das tabelas do atendimento e do VXMLElement em tabelas de sumário novas.

116379-trouble-cvp-server-01.png

As tabelas de sumário do relatório são:

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

As tabelas são criadas basearam nesta programação:

  • As tabelas diárias são povoadas um dia atrás das 15 tabelas minutos.
  • As tabelas semanais estão povoadas das tabelas diárias, uma vez que aquelas foram povoadas inteiramente para a semana na pergunta.
  • As tabelas mensais estão povoadas das tabelas semanais, uma vez que aquelas foram povoadas inteiramente para o mês na pergunta.

Veja a identificação de bug Cisco CSCue65248, “tabelas de sumário do relatório CVP não são povoados.” No server do relatório CVP, as tabelas de sumário não são povoadas. A edição é causada pelo script para o sumário mensal, que foi introduzido em CVP 9.0.

Diferenças entre o base de dados 8.x e 9.0 de relatório CVP

O CVP unificado 9.0(1) que relata o base de dados é apoiado somente no server R2 de Windows 2008. Porque o base de dados unificado do relatório CVP 8.x é apoiado por Windows 2003, não há nenhuma atualização direta ao CVP unificado 9.0(1) que relata o base de dados.

Para instruções da migração, veja o Guia de Instalação. Observe que:

  • O componente de servidor do relatório não pode ser instalado se a máquina é já parte do domínio.
  • O componente de servidor do relatório não pode ser instalado em um server que seja parte de um domínio. A instalação do componente exige que as políticas de segurança local tomam a precedência superior do que as mesmas políticas de segurança no console da política do grupo, que não é possível se o server é parte de um domínio. Contudo, após a instalação, o server pode ser adicionado de volta ao domínio porque este não exige nenhuma políticas local ser executado no server.

As diferenças em tarefas da instalação do cargo incluem:

  • 4.x, base de dados do relatório 7.x - Entre como um usuário de Informix, e execute estes arquivos de lote:
    • ReportingRunAsInformix.bat.
    • ReportingRunAsCVP_DbAdmin.bat.
  • base de dados do relatório 8.x - Entre como um usuário de Informix, e execute este arquivo de lote:
    • CVP_Database_Config.bat.
  • base de dados do relatório 9.x - Nenhum arquivo de lote é exigido como parte do processo de instalação do cargo.

Uma diferença chave nos usuários é que, com 9.x, não há não mais usuário de Informix. Em lugar de, o usuário do cvp_dbadmin é o proprietário do base de dados.

Relatando a sobrecarga do server

O MCS-7845 de Cisco que relata server pode segurar 420 mensagens por segundo.

Use esta equação a fim determinar o número de mensagens do relatório geradas por segundo para cada aplicativo do VoiceXML:

A# = %CPS * CP * MSG

em que:

  • %CPS = a porcentagem dos atendimentos que usam este aplicativo do VoiceXML
  • CP = o número de atendimentos por segundo
  • MSG = o número de mensagens que do relatório este aplicativo gerencie

Use esta equação a fim adicionar as mensagens geradas por cada aplicativo:

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

onde A(total) é o número total de mensagens do relatório geradas por segundo por seus aplicativos do VoiceXML.

O número de mensagens do relatório pelo elemento ou a atividade está na tabela 17 dentro da liberação do projeto de rede da referência da solução do Portal Cisco Unified Customer Voice (CVP) (SRND) 9.0(1).

Para a simplicidade, você pode usar esta pergunta a fim calcular o número de mensagens médio escritas à tabela do vxmlsession para o segundo:

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

Execute esta pergunta contra estas 14 tabelas:

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

Adicionar os resultados a fim obter por segundo o número de mensagens médio recebidas pelo server do relatório.

Troubleshooting

Se o server do relatório é sobrecarregado, os logs do relatório contêm estes alertas:

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]

Falha e restauração - Relatando o server parcial

Há diversas encenações aonde o server do relatório vai ao serviço parcial. Contudo, o serviço parcial não significa necessariamente que há um problema.

Relatando a falha do servidor

Se o server do relatório falha, as mensagens destinadas para o server do relatório estão protegidas pelo server do atendimento, na memória, até 200,000 mensagens. Em seguida que o limite está alcançado, toda a informação detalhada nova da mensagem é deixada cair.

Nota: Para Plataformas UCS, você deve alterar o número de bufferes Receive que ajustam-se no server do relatório a fim maximizar o relatório completo e chamar a carga na plataforma virtual. Se este ajuste não é alterado depois que você instala o OS, as mensagens suportam no CallServer, e as filas de mensagem enchem-se acima. Você vê então uma queda brusca na taxa dos atendimentos por segundo (CP).

Tome estas etapas a fim ajustar o número de bufferes Receive nos ajustes do server TCP do relatório a 4096 (máximo):

  1. No server do relatório, clique o Control Panel > a conexão de rede.
  2. Clicar com o botão direito a conexão de rede.
  3. Clique na guia Advanced.
  4. Sob a ABA de propriedade, selecione o número de bufferes Receive.
  5. Na caixa de texto do valor, incorpore 4096.
  6. Reinicie o server do relatório.

    Refira a virtualização para o CVP unificado: Configuração de rede UCS para a informação adicional.

Falha da Conexão ao base de dados

Se a Conexão ao base de dados falha, o server do relatório manda um alerta do Simple Network Management Protocol (SNMP) e começa-o armazenar mensagens a um arquivo persistente (%CVP_HOME% \ tmp \ CVPReporting.tmp) até um limite especificado pelo utilizador. Durante este tempo, as estadas do server do relatório em Service.When 75% do limite são alcançadas, um aviso são escritas ao arquivo de registro. Quando 100% do limite é alcançado, um alerta SNMP está mandado, e o server do relatório entra no serviço parcial. Todas as mensagens novas puderam ser deixadas cair.

Quando a Conexão ao base de dados vem apoio, o server do relatório entra no modo de recuperação e muda seu estado ao serviço parcial (se não está nesse estado já). Começa então ler mensagens do arquivo de %CVP_HOME% \ tmp \ CVPReporting.tmp e comprometê-las ao base de dados. Segundo o tamanho do arquivo, pode tomar horas para comprometer todos os dados ao base de dados. As mensagens novas que vêm dentro durante a recuperação são protegidas na memória.

Há, contudo, um limite ao número de mensagens que o server do relatório pode proteger, apesar do modo ou do estado do server:

  • Quando o número de mensagens protegidas alcança 100,000, um alerta SNMP está mandado como um aviso ao usuário.
  • Em 200,000 mensagens, um outro alerta SNMP é mandado, a informação detalhada para todas as mensagens novas é deixada cair, e somente os dados básicos como o atendimento, o evento de chamada, e a informação de sessão são mantidos. Em 200,000 mensagens, o server do relatório igualmente muda seu estado ao serviço parcial (se não está já nesse estado).
  • Quando o número total de mensagens protegidas alcança 300,000, um outro alerta SNMP está mandado, e todas as mensagens novas são deixadas cair desse ponto dianteiro.
  • Quando o número de mensagens na memória deixa cair para trás abaixo de 50,000, um alerta SNMP está mandado que indique que o tamanho da fila é de volta ao normal, e o estado do server do relatório vai para trás no serviço.

Se um arquivo persistente existe na partida, o server do relatório fica no serviço parcial e entra no modo de recuperação.

Atendimentos inacabados

O server do relatório pode igualmente ir ao serviço parcial quando está recuperando atendimentos inacabados.

Esta mensagem é considerada nos log de servidor do relatório:

%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]

Os logs igualmente incluem a informação sobre a recuperação destes atendimentos. Recorde que o processo de recuperação pode tomar um muito tempo!

%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]

Os atendimentos uma vez inacabados são terminados, estas mensagens são consideradas, e o server do relatório vai para trás no estado do serviço:

%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]

Modo de recuperação

Você pode remover o arquivo de %CVP_HOME% \ tmp \ CVPReporting.tmp a fim evitar o processo de recuperação e trazer para trás o server do relatório no serviço. Este procedimento descreve como contornear o processo de recuperação:

  1. Pare o serviço do servidor do atendimento CVP.
  2. Navegue a %CVP_HOME% \ tmp.
  3. Rebatize o arquivo CVPReporting.tmp.
  4. Enfie o serviço do servidor do atendimento CVP.

Veja a identificação de bug Cisco CSCtu43570, “CVPReporting.tmp cresce além do limite de tamanho e não é oportuno recuperado.” Os dados novos do relatório do atendimento foram perdidos porque o arquivo não poderia completamente ser lido dentro. O disco rígido estava enchendo-se acima, que causou eventualmente “fora uma condição do espaço de disco”.

Esta edição foi fixada base de dados no relatório 8.5(1)SR18 e 8.5(1)SR6 CVP unificado.

Nível de rastreamento e arquivos de registro

Edite o <install_dir> \ Cisco \ CVP \ arquivo do conf \ reporting.properties a fim ajustar o nível de rastreamento nos log de servidor do relatório. Este é um exemplo:

RPT.traceMask = 0x810000
RPT.logLevel = DEBUG

O agregador debuga e logs

Os sumários usam duas tabelas no base de dados do ciscoadmin: agg_schedule e agg_statements.

As mostras do arquivo <CVP_HOME> \ logs \ reporting.txt se a agregação foi executado.

Este procedimento descreve como permitir o traçado adicional para o trabalho aggregator.bat:

  1. Espera para um mínimo de 15 minutos.
  2. Edite o arquivo <CVP_HOME> \ escaninho \ aggregator.bat. Mude o valor do arquivo do .bat deste padrão:

    echo call sp_sched_agg(); | dbaccess ciscoadmin

    a:

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

Debugar logs são escritos no arquivo CVP_HOME> \ logs \ Agg_Debug.out.

Edições do espaço do base de dados

Nota: Esta edição do espaço foi considerada em aplicações diferentes. Porque a solução a esta edição envolve o conhecimento técnico profundo de Informix, contacte o centro de assistência técnica da Cisco (TAC) se você encontra este problema.

Este procedimento descreve o processo de Troubleshooting:

  1. Promova ao CVP unificado 8.0(1) que relata o base de dados.

  2. Execute o arquivo CVP_Database_Config.bat, e veja a edição:

    116379-trouble-cvp-server-02.jpg

  3. Reveja o arquivo de c:\temp\cvpupg.sql. O índice é:

    call upg_est(); UNLOAD to "c:/temp/upgvars.out" SELECT estimate1,estimate2,
    retention,log_space_needed,minlog,maxlog FROM cvp_data:upg_estimate;
  4. Conecte ao base de dados. Quando você tenta verificar a tabela do upg_estimate, não existe.

    116379-trouble-cvp-server-03.jpg

  5. Verifique o arquivo de c:\Temp\CiscoUnifiedCVPDB.log, e veja estes erros:

    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. Verifique upg_est.sql. O índice da tabela do 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
          );
    Mas, esta tabela não obtém criada.

  7. Conecte a DBAccess, e execute esta pergunta:

    SELECT COUNT(*) FROM systables     WHERE tabname='upg_estimate';
    A pergunta retorna 0, assim que a tabela deve ter sido criada.

  8. Tente criar manualmente a tabela em 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
       );
    Você recebe o Mensagem de Erro:

    261: Cannot Create file for table (informix.upg_estimate).
    131: ISAM error: no free disk space
  9. Execute o comando onstat - d, e verifique que o último pedaço não tem bastante espaço:

    116379-trouble-cvp-server-04.jpg

  10. Entre à caixa CVP Informix como o usuário de “Informix”.

  11. Crie um arquivo vazio novo chamado new_space sob E:\ifmxdata\cvp_db_wp17cvprpt1a\. Abra um comando prompt, e incorpore estes comandos. Não copie e cole:

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

    Nota: - s denota o tamanho do pedaço novo e é dado no KBs. Para o 100 MB, é 100 * 1024 = 102400.

    Este comando adiciona o 100 MB do dbspace ao server CVP Informix.

  12. Torne a colocar em funcionamento o arquivo CVP_Database_Config.bat. Trabalhará agora corretamente.

Este exemplo mostra como conectar ao base de dados com o DBAccess:

116379-trouble-cvp-server-05.png

116379-trouble-cvp-server-06.png



Document ID: 116379