Inhoud

Inleiding

Databasetabellen

Tabel voor samenvatting en aggregatie

Verschillen tussen CVP 8.x en 9.0 Rapportagedatabase

Overbelasting rapportageserver

Probleemoplossing

Fout en herstel - gedeeltelijke rapportage van de server

Rapportageserverfout

Databaseverbinding

Onvoltooide oproepen

Herstelmodus

Niveau en logbestanden overtrekken

Aggregator-debugs en -vastlegging

Databaseruimte

Inleiding

Dit document geeft een overzicht van de Cisco Unified Customer Voice Portal (CVP) rapportageserver en biedt stappen voor het oplossen van problemen aan.

- De rapportageservice ontvangt rapportagegegevens van de Cisco Unified IP Interactive Voice Response (IVR) service, de Session Initiation Protocol (SIP)-service (indien gebruikt) en de Cisco Unified CVP Voice XML-server (VXML). De service transformeert en schrijft de gegevens vervolgens naar de Informix-rapporteringsdatabase, die dient als historische rapportage in een callcenter-omgeving.

- De rapportageservice ontleent deze berichten vervolgens, converteert ze naar batches van toepasbare SQL-statements (Structured Search Language) en voert deze uit naar een SQL-database via JDBC API (Java Database Connectivity).

Databasetabellen

CVP-tabellen zijn ingedeeld in:

- Gesprekstabellen

- VXML-tabellen

- Samenvatting/aggregatietabellen

- Lookup- en referentietabellen

- Tabellen met dank aan CallBack

De vraag begint in de lijst van de Vraag en is verbonden aan de lijst VXMLession door de kolom Callphones.

Opmerking: Unified CVP DateTimes wordt geregistreerd als UTC-tijd; de uitzondering is de " dbdatetime " , die als lokale tijd wordt geregistreerd . De localtimezoneoffset is een kolom in de Call-tabel die het aantal minuten offset van UTC bevat om de lokale tijd af te leiden. Dit kan als tussenpoos worden gebruikt.

Tabel voor samenvatting en aggregatie

De gezamenlijke CVP - rapportageserver omvat een samenvattend proces waarbij gegevens uit de Oproep- en VXMLElement-tabellen in nieuwe samenvattende tabellen worden samengevoegd.

De samenvattende tabellen voor de rapportage zijn:

- Application Summary_15

- Toepassingsoverzicht_dagelijks

- Toepassingsoverzicht_week

- Application Summary_Monthly

- Bel_15

- Bel_Dagelijks

- Bel_wekelijks

De tabellen worden op basis van dit schema gemaakt:

- Dagelijkse tabellen zijn één dag achter de tafels van 15 minuten ingevuld.

- Weektabellen zijn opgenomen in dagelijkse tabellen, zodra deze voor de betrokken week volledig zijn ingevuld.

- Maandelijkse tabellen worden ingevuld uit wekelijkse tabellen, zodra deze voor de betreffende maand volledig zijn ingevuld.

Zie Cisco Bug ID CSCue65248, "CVP-tabellen met overzicht van rapportage zijn niet ingevuld." In de CVP-rapporteringsserver zijn de samenvattende tabellen niet ingevuld. De kwestie wordt veroorzaakt door het schrift voor de maandelijkse samenvatting, dat in CVP 9.0 is opgenomen.

Verschillen tussen CVP 8.x en 9.0 Rapportagedatabase

De gestandaardiseerde CVP 9.0(1) rapportagedatabase wordt alleen ondersteund op de Windows 2008 R2-server. Omdat de gestandaardiseerde CVP 8.x meldingsdatabase wordt ondersteund door Windows 2003, is er geen directe bijwerking van de uniforme CVP 9.0(1) rapporteringsdatabase.

Raadpleeg de installatiehandleiding voor informatie over migratie. Let op:

- De meldende servercomponent kan niet worden geïnstalleerd als de machine al deel uitmaakt van het domein.

- De meldende servercomponent kan niet op een server worden geïnstalleerd die deel uitmaakt van een domein. De installatie van de component vereist dat het lokale veiligheidsbeleid een hogere voorrang heeft dan het zelfde veiligheidsbeleid in de console van het groepsbeleid, wat niet mogelijk is als de server deel uitmaakt van een domein. Na installatie kan de server echter weer aan het domein worden toegevoegd omdat hiervoor geen lokaal beleid op de server vereist is.

Verschillen in post-installatie taken omvatten:

- 4.x, 7.x rapportagedatabase - Meld u aan als een Informix-gebruiker en voer deze batchbestanden uit:

- ReportingRunAsInformix.bat.

- ReportingRunAsCVP_dAdmin.bat

- 8.x Rapporterende database - Meld u aan als een Informix-gebruiker en voer dit batchbestand uit:

- CVP_Database_Config.bat

- 9.x rapporteringsdatabase - Er zijn geen batchbestanden vereist als onderdeel van het installatieproces van de post.

Een belangrijk verschil in gebruikers is dat er met 9.x geen Informix-gebruiker meer is. In plaats daarvan is de cvp_dbadmin gebruiker de eigenaar van de database.

Overbelasting rapportageserver

Cisco MCS-7845-rapportservers kunnen 420 berichten per seconde verwerken.

Gebruik deze vergelijking om het aantal rapporteringsberichten te bepalen dat per seconde wordt gegenereerd voor elke VoiceXML-toepassing:

A# = %CPS * CPS * MSG

waarin:

- %CPS = het percentage aanroepen dat deze VoiceXML-toepassing gebruikt

- CPS = het aantal oproepen per seconde

- MSG = het aantal rapportageberichten dat deze toepassing genereert

Gebruik deze vergelijking om de berichten toe te voegen die door elke toepassing gegenereerd zijn:

A(totaal) = A1+ A2+?..+AN

waar A (totaal) het totale aantal rapporteringsberichten is dat per seconde door uw VoiceXML toepassingen wordt gegenereerd.

Het aantal rapporteringsberichten per element of activiteit is in Tabel 17 in van Cisco Unified Customer Voice Portal (CVP) Solution Reference Network Design (SRND) release 9.0(1).

Voor eenvoud kunt u deze query gebruiken om het gemiddelde aantal berichten te berekenen dat in de vxmlsessie-tabel is geschreven voor één seconde:

select count(*)/86400 from vxmlsession where dbdatetime between

'2012-12-12 00:00:00' and '2012-12-13 00:00:00'"

Start deze query tegen deze 14 tabellen:

1. Aanroepen

2. CallEvent

3. CallICMI-nfo

4. UitgaandeECCVariable (CCB gerelateerd)

5. VXMLCustomContent

6. VXMLElement

7. VXMLEDetail

8. VXMLElementFlag

9. VXMLERror

10. VXMLotEvent

11. VXHotLink

12. VXMLession

13. VXSessionVariable

14. VXVoiceInteractDetail

Voeg de resultaten toe om het gemiddelde aantal berichten per seconde te verkrijgen dat door de rapportageserver wordt ontvangen.

Probleemoplossing

Als de rapportageserver overbelast is, bevatten de rapporteringslogbestanden deze waarschuwingen:

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]

Fout en herstel - gedeeltelijke rapportage van de server

Er zijn verschillende scenario's waarbij de rapportageserver naar de gedeeltelijke service gaat. De gedeeltelijke dienst betekent echter niet noodzakelijkerwijs dat er een probleem is.

Rapportageserverfout

Als de rapportageserver faalt, worden de berichten die bestemd zijn voor de rapportageserver opgeslagen door de Call Server, in het geheugen, tot 200.000 berichten. Nadat deze grenswaarde is bereikt, wordt alle nieuwe informatie over de berichtdetails ingetrokken.

Opmerking: Voor UCS-platforms moet u het aantal ontvangerbuffers-instelling op de rapportageserver wijzigen om de volledige rapportage te maximaliseren en belasting op het virtuele platform te bellen. Als deze instelling niet is aangepast nadat u het besturingssysteem hebt geïnstalleerd, worden berichten op de CallServer en Berichtwachtrijen ingevuld. U ziet dan een scherpe daling in de aanroepen per seconde (CPS).

Neem deze stappen om het aantal Ontvangende Buffers op de TCP-instellingen van de Rapportageserver in te stellen op 4096 (max.):

1. Klik op de rapportageserver op Configuratiescherm > Netwerkverbinding.

2. Klik met de rechtermuisknop op Netwerkverbinding.

3. Klik op het tabblad Geavanceerd.

4. Selecteer onder het tabblad Eigenschap het aantal ontvangerbuffers.

5. Voer in het tekstvak Waarde 4096 in.

6. Start de rapportageserver opnieuw.

Raadpleeg Virtualisatie voor Unified CVP: UCS Network Configuration voor extra informatie.

Databaseverbinding

Als de databases niet worden aangesloten, verstuurt de rapportageserver een Simple Network Management Protocol (SNMP)-waarschuwing en begint hij berichten op te slaan naar een permanent bestand (%CVP_HOME%\tmp\CVPReporting.tmp) tot een door de gebruiker opgegeven limiet. Gedurende deze tijd blijft de rapporterende server in service.Wanneer 75% van de limiet is bereikt, wordt er een waarschuwing in het logbestand geschreven. Wanneer 100% van de limiet wordt bereikt wordt een SNMP-waarschuwing verstuurd en gaat de rapportageserver naar de gedeeltelijke service. Alle nieuwe berichten kunnen worden ingetrokken.

Wanneer de verbinding van de gegevensbank weer opkomt, gaat de rapporterende server over naar de terugwinningsmodus en verandert de staat in de gedeeltelijke service (als dat nog niet het geval is). Het begint dan berichten van het %CVP_HOME%\tmp\CVPReporting.tmp bestand te lezen en ze aan de database te binden. Afhankelijk van de grootte van het bestand, kan het uren duren om alle gegevens aan de database te binden. Nieuwe berichten die tijdens het herstel binnenkomen, worden in het geheugen gebukt gegaan.

Er is echter een limiet aan het aantal berichten dat de rapportageserver kan bufferen, ongeacht de modus of de status van de server:

- Wanneer het aantal gebufferde berichten 100.000 bereikt, wordt een SNMP alarm verzonden als waarschuwing aan de gebruiker.

- Bij 200.000 berichten wordt een ander SNMP-alarm verzonden, wordt de detailinformatie voor alle nieuwe berichten ingetrokken en worden alleen de basisgegevens zoals call, call event en sessie informatie bewaard. Op 200.000 berichten verandert de rapporterende server ook de staat in een gedeeltelijke service (indien die nog niet bestaat).

- Wanneer het totale aantal gebufferde berichten 300.000 bereikt, wordt een ander SNMP alarm verzonden, en alle nieuwe berichten worden van dat punt voorwaarts gedropt.

- Wanneer het aantal berichten in het geheugen onder de 50.000 daalt, wordt een SNMP- alarm verzonden dat de rijgrootte terug naar normaal is, en de staat van de rapportageserver terug naar In Service.

Als er een aanhoudend bestand bestaat bij opstarten, blijft de rapporteringsserver onderdeel van de Partial Service en gaat deze naar de herstelmodus.

Onvoltooide oproepen

De rapportageserver kan ook naar de Gedeeltelijke Dienst gaan wanneer het onvoltooide vraag herstelt.

Dit bericht is te zien in de logboeken van de rapportageserver:

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

De logbestanden bevatten ook informatie over de terugwinning van deze oproepen. Denk eraan dat het herstelproces lang kan duren!

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

Zodra onvoltooide oproepen zijn voltooid, worden deze berichten gezien en gaat de rapportageserver terug naar de status In Service:

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

Herstelmodus

U kunt het %CVP_HOME%\tmp\CVPReporting.tmp bestand verwijderen om het herstelproces te voorkomen en de rapporteringsserver opnieuw in gebruik te nemen. In deze procedure wordt beschreven hoe het herstelproces kan worden omzeild:

1. Stop de CVP Call Server service.

2. Navigeren naar %CVP_HOME%\tmp.

3. Hernoemen het bestand CVPReported.tmp.

4. Start de CVP Call Server-service.

Zie Cisco Bug ID CSCtu43570, "CVPRReporting.tmp groeit buiten de groothandelsgrens en wordt niet tijdig hersteld." Er zijn nieuwe gegevens over gespreksrapportage verloren gegaan omdat het bestand niet volledig kon worden gelezen. De harde schijf vulde zich aan, wat uiteindelijk tot een "ontoereikende schijfruimte" leidde.

Dit punt is vastgesteld in de Unified CVP 8.5(1)SR18 en 8.5(1)SR6 rapportagedatabase.

Niveau en logbestanden overtrekken

Bewerk het <install_dir>\Cisco\CVP\conf\reporting.properties-bestand om het overrolniveau in de rapporteringsserver-logbestanden in te stellen. Dit is een voorbeeld:

RPT.traceMask = 0x810000

RPT.logLevel = DEBUG

Aggregator-debugs en -vastlegging

De samenvattingen gebruiken twee tabellen in de ciscoadmin-database: agg_Schedule en agg_statements.

Het <CVP_HOME>\logs\reporting.txt-bestand toont aan of de aggregatie is uitgevoerd.

In deze procedure wordt beschreven hoe extra overtrekken voor de aggregator mogelijk is.bat-taak:

1. Wacht minimaal 15 minuten.

2. Bewerk het <CVP_HOME>\bin\aggregator.bat-bestand. Wijzig de waarde van het .bat-bestand vanuit deze standaard:

echo call sp_sched_agg(); | dbaccess ciscoadmin

aan:

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

Debug logs worden geschreven in het CVP_HOME>\logs\Agg_Debug.out-bestand.

Databaseruimte

Opmerking: Dit ruimteprobleem is bij verschillende implementaties gezien. Omdat de oplossing voor deze kwestie diepe technische kennis van Informix inhoudt, neem u contact op met het Cisco Technical Assistance Center (TAC) als u dit probleem tegenkomt.

In deze procedure wordt het proces voor het oplossen van problemen beschreven:

1. upgrade naar de Unified CVP 8.0(1) rapportagedatabase.

2. Start het CVP_Database_Config.bat-bestand en zie het probleem:

3. Bekijk het c:\temp\cvpupg.sql-bestand. De inhoud is:

call upg_est(); UNLOAD to "c:/temp/upgvars.out" SELECT estimate1,estimate2,

retention,log_space_needed,minlog,maxlog FROM cvp_data:upg_estimate;

4. Connect met de database. Wanneer u probeert de upg_schatting tabel te controleren bestaat deze niet.

5. Controleer het c:\Temp\CiscoUnifiedCVPDB.log-bestand en zie deze fouten:

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. Controleer upg_est.sql. De inhoud van de upg_assabel is:

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

);
Maar deze tabel wordt niet gemaakt.

7. Connect met DBAcess en voer deze query uit:

SELECT COUNT(*) FROM systables     WHERE tabname='upg_estimate';
De query retourneert 0, dus de tabel had aangemaakt moeten worden.

8. Probeer de tabel handmatig in DBAcess te maken:

CREATE TABLE upg_estimate (

estimate1 INTERVAL HOUR TO MINUTE,

estimate2 INTERVAL HOUR TO MINUTE,

retention SMALLINT,

log_space_needed INTEGER,

minlog INTEGER,

maxlog INTEGER

);
U ontvangt de foutmelding:

261: Cannot Create file for table (informix.upg_estimate).

131: ISAM error: no free disk space

9. Start onstat - d opdracht en controleer of de laatste unk niet voldoende ruimte heeft:

10. Meld u aan bij het CVP Informix-vakje als "Informix"-gebruiker.

11. Maak een nieuw leeg bestand dat new_space heet onder E:\ifmxdata\cvp_db_wp17cvprpt1a\. Open een opdrachtmelding en voer deze opdrachten in. Kopieer en pasta niet:

onspaces -a cvp_data_dbspace -

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

Opmerking: -s geeft de omvang van de nieuwe brok aan en wordt gegeven in KBs. Voor 100 MB is het 100 * 1024 = 102400.

Deze opdracht voegt 100 MB dbspace toe aan de CVP Informix server.

12. Start het CVP_Database_Config.bat-bestand. Het zal nu goed werken.

Dit voorbeeld toont hoe te om aan de gegevensbank met DBAcess te verbinden: