IBM Sterling Control Center: Performance Tuning do CC
Diagnostico e Tuning do Banco de Dados
O Control Center depende muito de seu banco de dados para funcionar. Lentidão em consultas de banco de dados, como inserções, atualizações e exclusões são sinais de baixo desempenho do banco de dados.
Para confirmar que os problemas de desempenho do banco de dados estão ocorrendo, verifique o Health no IBM Control Center e pesquise nos logs pelos seguintes textos:
- CCTR135I
- CCTR138I
- excessive
- inordinate
Exemplos de mensagens os logs:
- CCTR135I Time to insert monitored server data into EVENTS database table was: 436776 milliseconds
- CCTR138I Time EventMonitor took to retrieve data from EVENTS database table was: 1254366 milliseconds
- updateQueuedProcesses query time excessive
- updateQueuedProcesses query time (t1-t0) excessive - Total time
- ProcessSummaryWorker.getEvents() logic took an inordinate amount of time!
- Time to update nnn processes as ended was excessive.
- ProcessSummaryWorker took an inordinate amount of time to summarize file transfer
- ProcessSummaryWorker took an inordinate amount of time to summarize Process
- ProcessSummaryWorker took an inordinate amount of time to commit database changes to CC_PROCESS and CC_FILE_TRANSFER
Essas mensagens são indicativas de:
- Bancos de dados cujos índices não são mantidos regularmente e / ou
- Bancos de dados que contêm muitos dados
As inserções e atualizações do banco de dados normalmente levam apenas alguns milissegundos. Se as consultas demorarem muito, certifique-se de que os índices da tabela do Monitor do Centro de Controle sejam mantidos regularmente.
Podemos verificamos essas tabelas através da UI do Control Center ou no banco de dados usando a query (Oracle):
select table_name, owner,last_analyzed, num_rows from all_tables where owner='<OWNER DO ICC>' and num_rows > 0 order by num_rows desc
Tome nota das informações como a quantidade de registros nas tabelas ou a data de atualização das estatísticas:
- EVENTS,
- BP_STATS_LOG,
- CD_STATS_LOG,
- CC_PROCESS,
- CC_FILE_TRANSFER,
- ROLL_UP.
Em primeiro lugar configure o Purge Summary Data Older Than para 10 ou 7 dias e verifique se reduziu o tempo. Depois solicite apoio da equipe de Banco de Dados para diagnosticar ou sugerir melhorias, a fim de que as queries sejam executados abaixo de 2000 milissegundos (2 segundos).
Configurações de Tuning no IBM Control Center Monitor
Configure o Purge Summary Data Older Than
Devemos habilitar o Purge Summary Data Older Than, com o intervalo de 10 dias. Esta variável é o período no qual o Summary Process Data e os dados de transferência de arquivos são retidos nas tabelas do banco de dados. 0 é o valor padrão, o que significa que o sistema não limpa os dados de resumo.
1) Acesse o console do IBM Control Center,
2) selecione System Settings e acesse a guia Database. Insira os valores:
Purge Summary Data Older Than (days): 10
Clique em Update para salvar os dados.
SUMMARY_TABLES_PURGE_ROLL_UP e SUMMARY_TABLES_PURGE_FILE_COUNTS
Ao alterar o “Purge Summary Data Older” para um valor maior que zero não causará todos dados de resumo a serem eliminados.
Precisamos definir para TRUE as seguintes propriedades do engine.properties:
SUMMARY_TABLES_PURGE_ROLL_UP=true SUMMARY_TABLES_PURGE_FILE_COUNTS=true
cujo o padrão é FALSE, informa ao ICC se deve limpar os dados das tabelas ROLL_UP e FILE_COUNTS quando outros dados de resumo são limpos.
Os dados da tabela ROLL_UP são usados pelo console da Web ICC para facilitar a atividade de transferência de arquivo recente.
EVENT_MONITOR_EVENT_COUNT_FOR_CATCHUP
Alterar o valor da variável:
EVENT_MONITOR_EVENT_COUNT_FOR_CATCHUP=200
O valor atual 100 é referente a versões antes da versão 6.2 do Control Center, o valor atual é 200.
Este valor pode ser maior, mas não deve passar de 1000.
Verificar no Engine.log, pelas mensagens:
EventMonitor - Event Monitor in catchup. EVENT_COUNT_FOR_CATCHUP = 100 processedCount = 125
ou no Health do Control Center.
EVENT_MONITOR_EVENT_LIMIT_PER_RUN
Alterar o valor da variável:
EVENT_MONITOR_EVENT_LIMIT_PER_RUN=1000
O valor atual 125 é referente a versões antes da versão 6.2 do Control Center, o valor atual é 1000.
PROCESS_SUMMARY_THREADS
Define a quantidade de threads que são usados pelo ProcessSummarizationService para resumir os processos concluídos.
Quanto maior for esse valor definido, maior será a utilização de memória e CPU.
Alterar o valor da variável:
PROCESS_SUMMARY_THREADS=
O valor default é 4.