Identifique a origem de um padrão lento e priorize possíveis melhorias de desempenho.
Antes de Iniciar
Função necessária: sn_app_insights.admin ou administrador
Procedimento
-
Navegar até .
-
Procure possíveis problemas de desempenho exibindo as tabelas Eventos lentos, Transações lentas, Consultas lentas e Scripts lentos.
- Concentre-se em um período de 1 dia, 7 dias ou 30 dias selecionando um intervalo de dias.
- Identifique padrões com tempos de execução consistentemente altos classificando na coluna Tempo médio de execução no intervalo.
- Descubra quais padrões são executados com mais frequência classificando na coluna Contagem de execução no intervalo.
-
Selecione um padrão lento com um alto tempo de execução e alta contagem de execuções.
O gráfico de detalhes do Tempo Médio de Execução mostra o tempo de execução do padrão lento e sua média móvel de 1 dia.
-
Exiba o desempenho do padrão lento ao longo do tempo analisando o gráfico de detalhes do Tempo Médio de Execução.
- Procure picos dentro do intervalo de tempo selecionado. Procure correlações com eventos impactantes do sistema que possam indicar um alarme falso sobrepondo eventos de diagnóstico.
- Exibe o número de vezes que o padrão foi executado no intervalo de tempo selecionado.
- Determine se o desempenho está piorando ao longo do tempo visualizando a direção da linha de tendência da Média móvel de 1 dia.
-
Descubra o que está acionando o padrão lento selecionando Exibir registro.
O registro de padrão lento aparece e fornece detalhes adicionais, incluindo o conteúdo da consulta ou do script, a primeira vez em que foi executado e a última vez em que foi executado.
-
Para acessar informações adicionais úteis para solução de problemas, adicione as listas relacionadas Scripts referenciados e Padrões lentos relacionados.
| Opção | Descrição |
|---|
| Scripts demorados |
- Selecione o menu de contexto do formulário (
).
- Altere a exibição do formulário selecionando Exibir > Insights de script lento.
|
| Consultas lentas |
- Selecione o menu de contexto do formulário (
).
- Altere a exibição do formulário selecionando Exibir > Informações de consulta lenta.
|
-
Determine a causa da lentidão.
- Ao investigar uma consulta lenta, determine qual script ou regra de negócio acionou a lentidão encontrando a entrada com a ordem de chamada mais alta na lista relacionada Scripts referenciados. Por exemplo, suponha que uma consulta lenta seja acionada por um script cuja ordem de chamada é 2 que é chamada por uma regra de negócio cuja ordem de chamada é 1. Esse script acionou diretamente a consulta lenta porque tem a ordem de chamada mais alta.
- Ao investigar um script lento, identifique os padrões lentos acionados pelo script exibindo os padrões na lista relacionada Padrões lentos relacionados. Determine quais padrões lentos investigar primeiro classificando nas colunas Tempo Médio de Execução no Intervalo e Contagem Média de Execução no Intervalo. Investigue os padrões lentos com os valores mais altos em cada coluna primeiro.
- Confirme um possível problema exibindo a lista Padrões lentos relacionados, que fornece uma lista de outros padrões lentos que têm scripts referenciados em comum. Se vários padrões lentos fizerem referência à mesma inclusão de script ou regra de negócio, você pode ter certeza de que é onde está o problema.
- Opcional:
Para solucionar problemas de vários padrões lentos, abra cada registro, verifique o número de entradas na lista relacionada Padrões lentos relacionados e priorize a depuração ou a resolução do padrão lento com a contagem mais alta.
A depuração do padrão lento com a contagem mais alta tem maior probabilidade de melhorar o desempenho.
-
Tome medidas para resolver o problema de desempenho.
- Otimize ou remova a inclusão de script ou regra de negócio violada.
- Determine se você pode evitar o uso da consulta lenta. Se a consulta for necessária, tente otimizá-la com condições de consulta adicionais ou uma consulta sys_id para que ela retorne somente as informações necessárias.
- Determine se um índice pode otimizar o desempenho da consulta lenta.
Solução de problemas de uma consulta lenta
Depois de classificar a tabela Consultas lentas pelo campo Contagem de execuções no intervalo, você verá uma instrução SELECT com uma contagem alta de execuções nos últimos 7 dias.
Para descobrir o que está acionando essa consulta lenta, selecione o nome da consulta para abrir o gráfico de detalhes e selecione Exibir registro.
A lista relacionada Scripts referenciados exibe três scripts. O script DeprecationCalculators tem a ordem de chamada mais alta de todos os scripts referenciados, indicando que ele acionou diretamente o padrão lento.
Para corrigir o problema:
- Examine a inclusão de script DeprecationCalculators e determine se você pode evitar o uso desta consulta. Neste exemplo, a consulta é em relação à tabela fx_currency, o que implica que um cálculo de moeda está acontecendo. Tente contornar este cálculo ou remova-o se não for necessário.
- Se a consulta não puder ser evitada em DeprecationCalculators, determine se a chamada para outros scripts com ordens de chamada mais baixas poderia ser evitada ou diminuída na contagem de execuções. Neste exemplo, DepreciationUtils precisa chamar DeprecationCalculators, mas talvez você possa definir o trabalho agendado Calcular Depreciação para ser executado com menos frequência.
- Se os ajustes nos scripts inferiores na ordem de chamada não forem viáveis, considere adicionar um índice para ajudar no desempenho.