O gerenciamento de logs cobre tudo desde a geração de logs até o seu arquivamento e descarte. Mas agregar logs de modo que as equipes possam usá-los para resolver problemas com eficácia costuma ser o que vem primeiro à nossa mente. O gerenciamento de logs bem-sucedido significa que seus dados de log são enviados para um local central em que todos podem recuperá-los, visualizá-los e analisá-los conforme necessário e em contexto com dados de outros serviços. Os logs contextualizados significam que você traz o contexto dos seus aplicativos e infraestrutura para o trabalho de resolução de problemas com logs.

Alguns dos principais desafios do gerenciamento de logs para aplicativos de software distribuídos incluem a coleta de logs e a identificação do log que você precisa quando necessário. Outros desafios incluem o gerenciamento de alertas e o tratamento dos ruídos de alertas. Mas as ferramentas que proporcionam uma abordagem contextualizada simplificam o gerenciamento de logs.

Nesta publicação, você vai aprender: 

  • O que logs contextualizados e registro de logs em contexto significam
  • Casos de uso dos logs contextualizados
  • Benefícios do uso de logs contextualizados
  • Uso dos logs contextualizados para criar alertas melhores 
  • Implementação dos logs contextualizados no New Relic

O que são logs contextualizados?

Às vezes chamados de registro de logs em contexto, os logs contextualizados referem-se à visualização de logs junto com os problemas nos seus aplicativos e infraestrutura. Como esses dados úteis sobre seus aplicativos e infraestrutura são adicionados a eventos de log e compartilhados entre eventos relacionados, é mais fácil identificar padrões e tendências de diferentes partes do sistema quando você visualiza os logs contextualizados. 

Em vez de logs isolados que precisam ser ordenados, você tem o contexto de onde o erro ou o problema começou. Você consegue navegar facilmente para analisar os erros e problemas com mais detalhes. E, se estiver começando com um erro ou distributed trace, você consegue voltar para o log que foi criado nessa transação.

Aqui está um exemplo de uso dos logs contextualizados no New Relic: 

  • O agente APM do New Relic fornece dados de monitoramento do desempenho de aplicativos para o framework de registro em logs e inclui esses dados nos seus logs de aplicativo. 
     
  • O New Relic se conecta automaticamente com os dados que são recebidos dos seus aplicativos. Quando você acessa a página de resumo do APM de um serviço, pode ver os logs de erro listados sob dados relacionados, além de um gráfico dos logs no período selecionado, exibidos por gravidade.
  • O New Relic correlaciona mensagens de log com os dados, assim você pode procurar padrões e tendências relevantes. Nas páginas de APM do New Relic, é possível se aprofundar nos detalhes de logs, traces e erros, incluindo o Errors Inbox, além de dados da sua infraestrutura e do Kubernetes.

    Como o New Relic correlaciona dados de logs com eventos e traces dos aplicativos associados, os erros de APM e distributed traces são vinculados diretamente aos logs criados durante a mesma transação que cada erro ou trace. Por exemplo, a visualização de hosts (infraestrutura) se liga diretamente a logs disponíveis.

A experiência de exibição dos hosts (infraestrutura) agora se liga aos logs disponíveis.

  • O New Relic enriquece seus dados de log adicionando atributos contextuais aos logs: uma ID do span, uma ID do trace e o nome do aplicativo são inseridos nas mensagens do log. Assim é mais fácil para as equipes resolverem problemas ao analisar os dados, fazer conexões e identificar outras áreas em que um problema poderia afetar a saúde e o desempenho do seu aplicativo. Na página principal de interface dos logs, você visualiza todos os seus logs e pode filtrar para ver logs com atributos e texto específicos.

Uma solução de registro de logs em contexto aborda os desafios de encontrar um log relevante para seu problema e ver todos os logs em um só lugar.

Usar logs contextualizados ajuda nos dois casos. Pense nisso de maneira circular: você pode começar analisando um log específico e depois ir para o servidor. Ou pode começar olhando os dados de um servidor e depois ir para os detalhes do log certo. Por exemplo, em uma visualização resumida de logs no New Relic, você pode ver o escopo dos logs até o nível de um aplicativo que está analisando e identificar padrões nos seus logs desse aplicativo. Mas se você está observando um distributed trace que abarca vários aplicativos e hosts, também pode ver os logs contextualizados.

Uso dos logs contextualizados para criar alertas melhores

Qualquer que seja a ferramenta de observabilidade ou monitoramento que você está usando, os objetivos dos alertas costumam focar como notificar automaticamente as pessoas e equipes certas quando há um problema com seu aplicativo ou até mesmo uma atividade que é importante para as suas metas de negócios. Ao gerenciar alertas, pode ser um desafio definir os limites certos que vão acioná-los. Se há alertas demais, a ferramenta que você está usando, ou a maneira como os alertas foram configurados na ferramenta, pode causar muitos ruídos. Se você recebe alertas constantemente, não presta mais atenção neles. Você apenas os ignora, o que é conhecido como um excesso de alertas.

Você pode criar alertas com outros tipos de dados de telemetria, mas aqui estão algumas dicas relacionadas especificamente com logs no New Relic:

Casos de uso dos logs contextualizados

Aqui estão alguns exemplos de como usar os logs contextualizados:

  • Analisar dados de logs para ter insights sobre comportamento do usuário, problemas de segurança e desempenho do sistema. Comece procurando padrões e analisando logs em vários intervalos de tempo.
  • Estreitar o seu foco filtrando os logs por tipo de erro ou gravidade ou pesquisando logs relacionados a um serviço ou usuário específico. Em seguida, examine os detalhes do log.
  • Ver e saber o que estava acontecendo no host quando ocorreu um erro no seu aplicativo por meio da resolução do erro no Errors Inbox ou selecionando APM > Events > Error analytics.
  • Correlacionar logs com outras fontes de dados para ter um entendimento melhor do que está acontecendo. Por exemplo, você pode rastrear uma determinada transação de usuário em logs para ver como é o desempenho em vários serviços. Você pode resolver problemas de latência usando distributed traces para ter uma melhor compreensão do que estava acontecendo no seu sistema quando o desempenho diminuiu. 
  • Criar um alerta que é acionado quando uma mensagem de erro específica é encontrada nos seus logs ou quando tentativas de login atingem um determinado limite de falhas.
  • Compartilhar com outras pessoas o que você encontrou nos logs adicionando gráficos de logs a um dashboard. 

Benefícios do uso de logs contextualizados

Aqui estão os principais benefícios de uma abordagem de registro de logs em contexto. Se você tem acesso a logs contextualizados, o gerenciamento de logs é mais fácil de quatro maneiras principais.

Melhorar o tempo de resposta a incidentes

Como você consegue ver quais serviços ou componentes são afetados, quais erros ou avisos são gerados e quando os problemas começaram, pode priorizar seus esforços de resposta e reduzir o tempo que leva para identificar a causa raiz do problema e resolvê-lo.

Os logs fornecem uma fonte comum de informação para ajudar todos a ficarem na mesma página e trabalharem em direção aos mesmos objetivos. Os logs ajudam a identificar quem precisa ser envolvido ao responder a problemas e garantir que todos tenham acesso às informações de que precisam para resolver o problema.

Aprimorar como múltiplas equipes colaboram

Os logs contextualizados são uma fonte comum de informação que todos podem acessar e usar para trabalhar em direção a um objetivo comum. As equipes podem usar logs para compartilhar informações e insights, fazer perguntas e dar feedback uns para os outros, o que ajuda todos a tomar decisões melhores juntos.

Reduzir o excesso de alertas e melhorar a eficiência da sua equipe

Os logs fornecem mais contexto aos alertas, o que ajuda a reduzir falso-positivos. Para os alertas que são acionados, o contexto ajuda as equipes a priorizar o foco naqueles que são mais críticos. 

Melhorar a confiabilidade e precisão dos alertas

Quando você analisa os logs contextualizados, tem um melhor entendimento de como o seu sistema se comporta em condições normais. Assim é possível criar alertas mais precisos e sob medida para o seu ambiente em particular, além de menos propensos a gerar falso-positivos. Você pode criar acionadores de alertas mais precisos que têm mais probabilidades de identificar problemas reais.

Implementação dos logs contextualizados

Aqui estão as etapas básicas e dicas para aplicar os logs contextualizados do New Relic no seu ambiente:

  1. Configure os logs contextualizados para monitoramento de infraestrutura ou APM. Você tem várias opções para encaminhar seus dados de logs para o New Relic.
     
  2. Implemente os logs contextualizados com o agente APM que corresponda à linguagem do seu aplicativo. Há etapas específicas para cada agente: 
  1. Explore os dados de registro em logs na sua plataforma selecionando Logs na navegação do New Relic.
     
  2. Analise todos os outros lugares no New Relic em que você pode acessar os seus logs para ver os logs contextualizados do desempenho do seu aplicativo.
     
  3. Configure os alertas.
     
  4. Para aproveitar ao máximo seus dados de registro em log no New Relic, você também pode consultar seus dados e criar dashboards.

Para conhecer algumas práticas recomendadas e dicas sobre o gerenciamento de logs no geral, consulte estas práticas recomendadas para o gerenciamento de logs. Para dicas específicas de resolução de problemas para logs contextualizados, confira o fórum de suporte da comunidade da New Relic.

Conclusão

Você aprendeu os benefícios de usar logs contextualizados para simplificar sua resolução de problemas e melhorar seu gerenciamento de logs, alertas, tempos de resposta a incidentes e colaboração no geral.

Você também conheceu alguns casos de uso dos logs contextualizados no New Relic e aprendeu como começar a implementar o registro de logs em contexto com seus próprios dados.