Vamos começar com “por que” alguém deveria se preocupar em configurar o Datadog na máquina local. Posso compartilhar minha motivação para configurá-lo Meu forte 'porquê': tentando entender os testes esquisitos: Tínhamos um amplo conjunto de testes de ponta a ponta com alta cobertura. Mas, infelizmente, os testes ficaram cada vez mais esquisitos com o tempo. Para minha consternação, quando os testes eram executados isoladamente, eles passavam. Quando executávamos todo o conjunto de testes, muitos testes começavam a falhar. Os logs do aplicativo correspondentes aos testes devem nos ajudar na depuração. Mas eu não conseguia nem entender onde os logs de um determinado teste começavam e terminavam, muito menos entendê-los. Datadog para o resgate 🦸! nós temos usado em nosso projeto para visualizar os logs de produção e achamos super útil. Foi quando tive uma epifania! E se eu configurar o Datadog localmente para dissecar esses logs? E foi isso que desencadeou o conteúdo desta postagem no blog. datadog Nosso aplicativo é escrito em Java e minha máquina local roda em MacOS. Você pode ajustar as etapas abaixo para atender às suas necessidades. O que você precisa para configurar: Inscreva-se no Datadog . Nosso escopo aqui é apenas depuração local, então um deve ser suficiente. aqui teste grátis Datadog Agent é o Configurações como nome do serviço, ambiente, etc. podem ser feitas no agente. software que monitora o host no qual é executado. , biblioteca Java do cliente APM (App Performance Monitoring) da Datadog. é um jar que contém APIs para automaticamente ou manualmente e Aplicativos Java. dd-trace-java dd-trace-java vestígio perfil Passo 1 — Processo de inscrição: Depois de fornecer seu ID de e-mail e outros detalhes, você será solicitado a escolher sua pilha de tecnologia na próxima página. depois de clicar em 'Next', vem a parte mais importante. Você receberá as instruções de 'configuração do agente'. Minha máquina local é MacOSX, então escolhi apropriadamente. Anote os valores e , pois eles serão usados nas etapas subsequentes. DD_API_KEY DD_SITE Passo 2— Instalação do Datadog Agent: Para MacOS, você pode instalar via (gerenciador de pacotes para MacOS). Use o . ¹ fermentar comandos fornecidos aqui para instalação Personalize o conforme mostrado abaixo datadog-agent Depois que a etapa acima for concluída, você será solicitado a 'Concluir' no Datadog-web-UI. Você será solicitado a adicionar quaisquer . Você pode adicionar , etc (conforme as necessidades do seu projeto). integrations Java Docker Passo 3 — Instale o rastreador Datadog: Baixe o jar em ² dd-java-agent aqui Para seu aplicativo Java, verifique se você está usando uma versão do Java que vem com um embutido. Isso é necessário para rastreamento. O OpenJdK8 vem com um embutido. Se você estiver usando o Oracle Java, precisará de uma licença comercial para usar o **FlightRecorder.**³ FlightRecorder FlightRecorder Executando seu aplicativo: adicione as opções de VM para nosso aplicativo java: -javaagent:"/Users/home/Downloads/dd-java-agent.jar" -Ddd.profiling.enabled=true -Ddd.logs.injection=true -Ddd.agent.port=8126 -Ddd.service=ecommerce-service -Ddd.env=local -XX:FlightRecorderOptions=stackdepth=256 Se você estiver usando uma tarefa , pode incluir o conforme abaixo: gradle jvmArgs jvmArgs = ["-javaagent:/Users/home/Downloads/dd-java-agent.jar", "-XX:FlightRecorderOptions=stackdepth=256", "-Ddd.profiling.enabled=true", "-Ddd.logs.injection=true", "-Ddd.agent.port=8126", "-Ddd.service=ecommerce-service", "-Ddd.env=local"] Agora inicie seu aplicativo Java. Se o rastreamento estiver ocorrendo corretamente, você deverá ver os logs abaixo: Fazendo login no Datadog: Para permitir que os logs sejam transmitidos para o Datadog, siga as instruções na IU da Web do Datadog. ⁴ Para — o diretório de configuração é e o arquivo está presente em macOS ~/.datadog-agent/conf.d/java.d ~/.datadog-agent/conf.d/java.d/conf.yaml e agora, os devem começar a fluir no Datadog. logs Algumas dicas: Adicione logs apropriados no início e no final de cada método em seu aplicativo. É muito útil durante a depuração. debug Adicione um mecanismo para injetar e . É um salva-vidas incrível e coloca os registros no contexto adequado.⁵ span id trace id Conclusão: Assim que coloquei o agente Datadog em funcionamento localmente, pude visualizar todas as solicitações contextualmente. E voilá! Todos os meus testes de ponta a ponta estão passando agora 🙂 Feliz registro! Informação adicional: ¹Como alternativa, você também pode baixar o e instale-o. Este link também pode ser obtido na etapa 'Configuração do agente' acima (consulte a captura de tela) pacote dmg ²Download direto do jar. dd-trace-java ³ A partir do JDK 11, podemos usar sem ativar nada. Mais detalhes podem ser encontrados . FlightRecorder aqui ⁴Mais detalhes estão . aqui ⁵Se seu aplicativo for Java, você pode usar esta biblioteca para adicionar e à solicitação. detetive-nuvem-primavera span_id trace_id