A Cisco traduziu este documento com a ajuda de tecnologias de tradução automática e humana para oferecer conteúdo de suporte aos seus usuários no seu próprio idioma, independentemente da localização. Observe que mesmo a melhor tradução automática não será tão precisa quanto as realizadas por um tradutor profissional. A Cisco Systems, Inc. não se responsabiliza pela precisão destas traduções e recomenda que o documento original em inglês (link fornecido) seja sempre consultado.
Este original descreve como as atividades expressas unificadas do centro de contato (UCCX), que exigem o acesso à base de dados local UCCX, puderam executar lentamente. Faz com que as páginas appadmin carreguem lentamente, as atualizações ao AppAdmin para tomar um muito tempo tomar a influência, um atraso na resposta a uma pergunta do quadro, gerente da mão de obra para ser incapaz de perguntar dados UCCX, e outros desempenho e problemas de estabilidade.
A carga do comando show process, incorporada ao CLI, mostra que o uccxoninit consome uma grande quantidade de CPU. O processo do uccxoninit representa o exemplo do base de dados Informix UCCX que é executado no server UCCX.
O motor de base de dados que apoia o aplicativo UCCX é Informix do IBM. A configuração e a informação histórica que é adicionada à página appadmin de UCCX e produzida pelo aplicativo UCCX são armazenadas no exemplo UCCX Informix.
O aplicativo UCCX fornece três usuários que podem ser usados para alcançar diretamente o base de dados UCCX a fim extrair a informação para fins dos aplicativos do quadro, do Gerenciamento de qualidade, do Gerenciamento da mão de obra, e do relatório histórico feito sob encomenda.
A informação sobre o usuário, as permissões de cada usuário, e a finalidade pretendida de cada usuário são descritas aqui:
uccxwallboard - Este usuário tem permissões seletas somente nas tabelas de base de dados do tempo real que contêm instantâneos das estatísticas em tempo real redigidas da memória do motor UCCX. As permissões seletas restringidas às tabelas RTCSQsSummary e RTICDStatistics significam que o usuário do uccxwallboard deve ser usado para perguntar frequentemente o base de dados UCCX com as perguntas simples, NON-complexas pretendidas ser originado por um aplicativo do quadro.
Em UCCX libere 10.0 e mais atrasado, incorpore o comando do <interval> do <totalHours> do começo do dbperf do base de dados do uccx dos utils a fim começar o desempenho que segue no base de dados UCCX. O argumento do intervalo neste comando determina a periodicidade da coleção do traço e o argumento dos totalHours determina a quantidade total de tempo onde o traçado executa antes que esteja desabilitado. Estes parâmetros são opcionais. Se não são especificados quando o comando está executado os valores padrão de 20 minutos e horas 10 estão usados.
Por exemplo, entre nos utils o começo 24 30 do dbperf que do base de dados do uccx comanda a fim permitir o desempenho que segue no base de dados e recolher dados em estatísticas de desempenho cada 30 minutos por 24 horas.
As instruções para recolher os dados obtidos pelo comando CLI são imprimidas na saída do comando.
Após os totalHours dados, o levantamento de dados para automaticamente. A fim parar manualmente o levantamento de dados, inscreva o comando stop do dbperf do base de dados do uccx dos utils.
Se a versão UCCX é a liberação 9.0(2) ou mais adiantado e o comando do dbperf do base de dados do uccx dos utils não está disponível, contacte o centro de assistência técnica (TAC) para a assistência adicional.
O TAC executará o script de dbperf.sh anexado à identificação de bug Cisco CSCuc68413 manualmente com acesso remoto da conta do apoio.
Quando você determina quando começar manualmente a execução do script ou ou através do comando CLI, a periodicidade, e o tempo total, asseguram-se de que o CPU consumido pelo processo do uccxoninit flutue significativamente ou permaneça alto durante aqueles períodos a fim recolher a informação necessária para a análise da causa raiz.
Adicionalmente, inscreva periodicamente o comando load do processo da mostra determinar quando o CPU flutua a fim correlacionar os logs recolhidos pelo script do traçado do dbperf.
Os logs recolhidos pela execução do script do dbperf do onstat - ses g 0 perguntas do active da mostra que são emitidas contra o base de dados UCCX. A alta utilização da CPU no processo do uccxoninit é tipicamente o resultado das perguntas complexas que tomam um muito tempo executar. O objetivo é determinar as perguntas que consomem a maioria de recursos, determinam o cliente da fonte para aquelas perguntas, desabilitam as perguntas do cliente para a resolução imediata, e aperfeiçoam as perguntas longas para a definição permanente.
Nos logs recolhidos pelo script do dbperf, procure as perguntas que as flutuações altas da causa mais provável no CPU ou o consumo sustentado da alta utilização da CPU pelo uccxoninit processam.
Perguntas do suspeito:
Um exemplo com uma pergunta complexa que envolva uma tabela HR executada como o uccxhruser é mostrado aqui:
session #RSAM total used dynamic
id user tty pid hostname threads memory memory explain
435050 uccxhrus WBBOX 836 10.16.5. 1 90112 80712 off
...................
Current SQL statement :
SELECT x.resourceName, t.eventType, x.datetime, x.extension FROM ( SELECT
t1.resourceID, t1.resourceName, t1.extension, MAX(t2.eventDateTime) AS
datetime FROM Resource AS t1, AgentStateDetail AS t2 WHERE t2.agentID
= t1.resourceID AND t1.assignedTeamID = 21 and t1.active GROUP BY
t1.resourceID, t1.resourceName, t1.extension ) AS x, AgentStateDetail AS
t WHERE t.agentID = x.resourceID AND t.eventDateTime = x.datetime
ORDER BY x.resourceName
O exemplo acima mostrou uma pergunta complexa, incorporada pelo uccxhruser originado do host WBBOX que poderia causar o impacto no desempenho no base de dados UCCX se foi incorporado frequentemente ou incorporado periodicamente antes que a pergunta precedente retornou resultados.
Embora raro, o desempenho de base de dados UCCX pode igualmente degradar (e a utilização CPU do processo do uccxoninit flutua ou permanece alta), em consequência do processo incorporado da remoção. O processo da remoção é projetado suprimir de dados da configuração e de tabelas de histórico dentro do base de dados UCCX a fim manter o tamanho do base de dados. A remoção pode ser programada baseou no tamanho do base de dados ou do registro o mais velho contido dentro do base de dados.
Quando o processo da remoção é executado, os dados estão removidos com a uma pergunta. Não são feitos baseados iterativamente na quantidade de registros para remover. Isto significa que se a remoção detecta uma grande quantidade de dados que devem ser removidos, emite uma única pergunta na tentativa de remover estes dados.
A alteração da programação ou dos parâmetros da remoção da página appadmin UCCX a fim programar a remoção para remover uma grande quantidade de dados pode fazer com que esta única pergunta, em cima da remoção em seguida programada, tome uma quantidade significativa de tempo terminar. Consequentemente, conduz acima da utilização CPU da instância de base de dados.
Na saída do script do dbperf, a pergunta da remoção pode ser considerada. Deve ser a única pergunta incorporada pelo uccxuser do usuário que chama o procedimento armazenado do sp_purge.
session #RSAM total used dynamic
id user tty pid hostname threads memory memory explain
5628 uccxuser - -1 CC-EXPR- 1 544768 523408 off
Current SQL statement in procedure db_cra:sp_purge
proc-counter 0x0x4ccf9260 opcode SQL
delete from contactroutingdetail
where (exists
(select 1
from contactcalldetail as ccdr
where (and (and (and (and (and (= contactroutingdetail.sessionid,
ccdr.sessionid), (= contactroutingdetail.nodeid, ccdr.nodeid)),
(= contactroutingdetail.sessionseqnum, ccdr.sessionseqnum)),
(= contactroutingdetail.profileid, ccdr.profileid)), (>= ccdr.enddatetime,
p_purgefrom)), (< ccdr.enddatetime, p_purgeto))));
Baseado na experiência recente da engenharia do tac Cisco e de desenvolvimento Cisco, estas são o mais geralmente - as edições vistas que causam a utilização elevada da CPU no processo do uccxoninit: