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 admin
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 a Contagem de execuções na coluna de 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 podem indicar um alarme falso, sobrepondo eventos de diagnóstico.
- Exiba 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, exibindo a direção da linha de tendência da Média de movimentação 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 a consulta ou o conteúdo do script, a primeira vez em que foi executado e a última vez em que foi executado.
-
Para acessar informações úteis adicionais para solução de problemas, adicione as listas relacionadas Scripts referenciados e Padrões lentos relacionados.
| Opção | Descrição |
|---|
| Scripts lentos |
- Selecione o menu de contexto do formulário (
).
- Altere a exibição do formulário selecionando Exibir > Informações 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ócios 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 seja 2 que seja chamada por uma regra de negócios cuja ordem de chamada seja 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 de lentidão serão investigados primeiro classificando as colunas Tempo Médio de Execução no Intervalo e Contagem Média de Execuções no Intervalo. Investigue os padrões lentos com os valores mais altos em cada coluna primeiro.
- Confirme um possível problema exibindo a lista de padrões de lentidão relacionados, que fornece uma lista de outros padrões de lentidão 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 mais probabilidade de melhorar o desempenho.
-
Tome medidas para resolver o problema de desempenho.
- Otimize ou remova a regra de negócio ou inclusão de script incorreta.
- 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 pela contagem de execuções no campo de intervalo, você verá uma declaraçã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 DeprecationCalculations 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 DeprecationCalculations 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 DeprecationCalculations, determine se a chamada para outros scripts com ordens de chamada mais baixas poderia ser evitada ou diminuída na contagem de execução. Neste exemplo, DepreciationUtils precisa chamar DeprecationCalculations, mas talvez você possa definir o trabalho programado 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.