Compartilhar via


Diagnosticar cenários comuns com o Service Fabric

Este artigo ilustra cenários comuns que os usuários encontraram na área de monitoramento e diagnóstico com o Service Fabric. Os cenários apresentados abrangem as três camadas da malha de serviço: Aplicativo, Cluster e Infraestrutura. Cada solução usa o Application Insights e os logs do Azure Monitor, ferramentas de monitoramento do Azure, para concluir cada cenário. As etapas em cada solução fornecem aos usuários uma introdução sobre como usar o Application Insights e os logs do Azure Monitor no contexto do Service Fabric.

Pré-requisitos e recomendações

As soluções neste artigo usam as seguintes ferramentas. Recomendamos que você tenha estes configurados e configurados:

Como posso ver exceções não tratadas na minha aplicação?

  1. Navegue até o recurso do Application Insights com o qual seu aplicativo está configurado.

  2. Selecione Pesquisar no canto superior esquerdo. Em seguida, selecione o filtro no painel seguinte.

    Visão geral da IA

  3. Você verá muitos tipos de eventos (rastreamentos, solicitações, eventos personalizados). Escolha "Exceção" como filtro.

    Lista de filtros AI

    Ao clicar em uma exceção na lista, você pode ver mais detalhes, incluindo o contexto do serviço, se estiver usando o SDK do Service Fabric Application Insights.

    Exceção AI

Como posso ver que chamadas HTTP são utilizadas nos meus serviços?

  1. No mesmo recurso do Application Insights, você pode filtrar "solicitações" em vez de exceções e exibir todas as solicitações feitas

  2. Se você estiver usando o SDK do Service Fabric Application Insights, poderá ver uma representação visual dos serviços conectados entre si e o número de solicitações bem-sucedidas e com falha. À esquerda, selecione "Mapa de Aplicação"

    Lâmina do mapa do aplicativo AIMapa do aplicativo AI

    Para obter mais informações sobre o mapa do aplicativo, visite a documentação do Mapa do aplicativo

Como faço para criar um alerta quando um nó fica inativo

  1. Os eventos de nó são rastreados pelo cluster do Service Fabric. Navegue até o recurso de solução do Service Fabric Analytics chamado ServiceFabric(NameofResourceGroup)

  2. Selecione o gráfico na parte inferior da folha intitulado "Resumo"

    Solução de logs do Azure Monitor

  3. Aqui você tem muitos gráficos e blocos exibindo várias métricas. Selecione um dos gráficos e ele irá levá-lo para a Pesquisa de Log. Aqui você pode consultar quaisquer eventos de cluster ou contadores de desempenho.

  4. Insira a seguinte consulta. Essas IDs de evento são encontradas na referência de eventos de

    ServiceFabricOperationalEvent
    | where EventID >= 25622 and EventID <= 25626
    
  5. Selecione "Nova Regra de Alerta" na parte superior e, agora, sempre que um evento chegar com base nessa consulta, você receberá um alerta no método de comunicação escolhido.

    Azure Monitor registra Novo Alerta

Como posso ser alertado sobre reversões de atualização de aplicativos?

  1. Na mesma janela Pesquisa de Log que antes, insira a seguinte consulta para reversões de atualização. Essas IDs de evento são encontradas em Referência de eventos do aplicativo

    ServiceFabricOperationalEvent
    | where EventID == 29623 or EventID == 29624
    
  2. Selecione "Nova regra de alerta" na parte superior e, agora, sempre que um evento chegar com base nessa consulta, você receberá um alerta.

Como posso ver as métricas do contêiner?

Na mesma visualização com todos os gráficos, você verá alguns blocos para o desempenho de seus contêineres. Você precisa da solução Log Analytics Agent and Container Monitoring para que esses blocos sejam preenchidos.

Métricas de contêiner do Log Analytics

Nota

Para instrumentar a telemetria de dentro do seu contêiner, você precisará adicionar o pacote nuget do Application Insights para contêineres.

Como posso monitorizar os contadores de desempenho?

  1. Depois de adicionar o agente do Log Analytics ao cluster, você precisa adicionar os contadores de desempenho específicos que deseja acompanhar. Navegue até a página do espaço de trabalho do Log Analytics no portal – na página da solução, a guia do espaço de trabalho está no menu à esquerda.

    Guia Espaço de trabalho do Log Analytics

  2. Quando estiver na página do espaço de trabalho, selecione "Configurações avançadas" no mesmo menu à esquerda.

    Configurações avançadas do Log Analytics

  3. Selecione Contadores de Desempenho do Windows de Dados > (Contadores de Desempenho de Dados > Linux para máquinas Linux) para começar a coletar contadores específicos de seus nós por meio do agente do Log Analytics. Aqui estão exemplos do formato para os contadores adicionarem:

    • .NET CLR Memory(<ProcessNameHere>)\\# Total committed Bytes

    • Processor(_Total)\\% Processor Time

      No início rápido, VotingData e VotingWeb são os nomes de processo usados, portanto, o rastreamento desses contadores seria parecido com

    • .NET CLR Memory(VotingData)\\# Total committed Bytes

    • .NET CLR Memory(VotingWeb)\\# Total committed Bytes

      Contadores Perf do Log Analytics

  4. Isso permite que você veja como sua infraestrutura está lidando com suas cargas de trabalho e defina alertas relevantes com base na utilização de recursos. Por exemplo, você pode definir um alerta se a utilização total do processador for superior a 90% ou inferior a 5%. O nome do contador que você usaria para isso é "% Tempo do processador". Você pode fazer isso criando uma regra de alerta para a seguinte consulta:

    Perf | where CounterName == "% Processor Time" and InstanceName == "_Total" | where CounterValue >= 90 or CounterValue <= 5.
    

Como faço para acompanhar o desempenho dos meus Serviços e Atores Confiáveis?

Para acompanhar o desempenho de Serviços ou Atores Confiáveis em seus aplicativos, você também deve coletar os contadores Ator do Service Fabric, Método do Ator, Serviço e Método de Serviço. Aqui estão exemplos de contadores de serviço e desempenho de atores confiáveis para coletar

Nota

Os contadores de desempenho do Service Fabric não podem ser coletados pelo agente do Log Analytics atualmente, mas podem ser coletados por outras soluções de diagnóstico

  • Service Fabric Service(*)\\Average milliseconds per request
  • Service Fabric Service Method(*)\\Invocations/Sec
  • Service Fabric Actor(*)\\Average milliseconds per request
  • Service Fabric Actor Method(*)\\Invocations/Sec

Confira nestes links a lista completa de contadores de desempenho em Serviços e Atores Confiáveis

Próximos passos