Configurar OpenTelemetry para insights sobre aplicativos AEM
Saiba como conectar um ambiente do AEM as a Cloud Service à plataforma de observabilidade compatível do OpenTelemetry de sua escolha.
Em artigos anteriores, você aprendeu sobre os conceitos e benefícios de usar OpenTelemetry com AEM as a Cloud Service. Neste tutorial, usamos o projeto de amostra WKND do AEM como um aplicativo de exemplo e mostramos como exportar a telemetria implantando o config/otel.yaml usando um Pipeline de configuração do Cloud Manager.
As etapas de alto nível são:
- Obtenha o ponto de extremidade OTLP/HTTPS e a credencial de assimilação para sua plataforma de observabilidade.
- Armazene a credencial com segurança no Cloud Manager.
- Adicione o arquivo
config/otel.yamlao repositório de projetos do AEM. - Execute o Pipeline de configuração do Cloud Manager.
- Gere tráfego para o aplicativo do AEM.
- Verifique a telemetria na plataforma de observabilidade.
Pré-requisitos
Antes de iniciar, verifique se você tem:
- Um ambiente de desenvolvimento, preparo ou produção AEM as a Cloud Service com o site WKND ou com seu próprio aplicativo implantado. O OpenTelemetry não é compatível com ambientes de escopo HIPAA, programas de sandbox e ambientes de desenvolvimento rápido (RDEs).
- Acesso ao Cloud Manager com permissão para gerenciar variáveis de ambiente e criar e executar um Pipeline de Configuração.
- Uma plataforma de observabilidade que aceita OTLP por HTTPS, com um ponto de extremidade e uma credencial de assimilação.
- Acesso à plataforma de observabilidade para verificar e visualizar a telemetria de entrada do AEM.
Etapa 1: Obter seu endpoint de observabilidade e credencial
Na sua plataforma de observabilidade, localize o ponto de extremidade de assimilação OTLP/HTTPS e crie ou recupere a credencial de assimilação apropriada. Consulte a documentação da plataforma para obter instruções.
Não tem certeza de qual plataforma usar? Consulte Escolher uma plataforma de observação.
Este tutorial usa uma plataforma de observabilidade auto-hospedada que oferece suporte a OTLP em HTTPS e requer um token de autenticação básico.
Etapa 2: armazenar a credencial de observabilidade no Cloud Manager
Armazene a credencial de assimilação como uma variável de ambiente secreta do Cloud Manager.
-
No Adobe Cloud Manager, selecione seu programa do AEM.
-
Selecione o ambiente de destino e clique em Exibir Detalhes.
-
Na guia Configuração, clique em Adicionar/Atualizar e adicione uma variável de ambiente com estes valores:
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 Configuração Valor Nome OTEL_CUSTOMER_AUTHValor A credencial de assimilação do provedor. O formato varia de acordo com a plataforma. Consulte as configurações específicas do provedor para obter exemplos. Serviço aplicado Tudo Tipo Segredo Neste exemplo, a plataforma auto-hospedada usa um token de autenticação básico no formato
Basic <base64(user:password)>. -
Clique em Adicionar e em Salvar para armazenar a variável de ambiente.
O arquivo config/otel.yaml faz referência a este segredo como ${{secrets.OTEL_CUSTOMER_AUTH}}. A credencial nunca deve aparecer no repositório do AEM ou nos logs de pipeline.
Etapa 3: adicionar configuração OpenTelemetry
No repositório de projetos do AEM, crie o arquivo config/otel.yaml. A plataforma auto-hospedada neste tutorial usa a seguinte configuração:
kind: "Otel"
version: "v1"
metadata:
envTypes:
- "dev"
- "stage"
- "prod"
data:
enabled: true
type: "generic"
endpoint: "https://my-self-hosted-observability.adobe.net"
authHeaderName: "Authorization"
authHeaderValue: "${{secrets.OTEL_CUSTOMER_AUTH}}"
metrics: true
logs: true
As principais configurações são:
metadata.envTypesenabledtrue.typegeneric para uma plataforma auto-hospedada.endpointauthHeaderNameAuthorization.authHeaderValuemetricstrue.logstrue.Rastreia a exportação sempre que a integração é habilitada. Métricas e logs são opcionais. Eles exportam somente quando definidos como true.
Por exemplo, consulte a seguinte configuração de amostra WKND:
Etapa 4: implantar a configuração OpenTelemetry
- Confirme o arquivo
config/otel.yamle envie-o para o repositório e a ramificação que o Pipeline de configuração usa como origem. - No Cloud Manager, crie ou edite o Pipeline de configuração para o ambiente e verifique seus detalhes.
- Selecione o nome do pipeline e clique em Executar.
- Monitore a execução do pipeline até que ele seja concluído com sucesso.
O pipeline valida a configuração antes de aplicar as configurações de destino.
Etapa 5: gerar tráfego do AEM
Depois que o pipeline for concluído, gere alguma atividade de aplicativo:
- Abra o site da WKND ou seu aplicativo no serviço de publicação do AEM e navegue entre algumas páginas.
- Opcionalmente, abra o site da WKND no serviço do Autor para gerar a telemetria do Autor.
Aguarde alguns minutos para que a telemetria chegue à sua plataforma de observabilidade.
Etapa 6: verificar a telemetria na plataforma de observabilidade
Abra sua plataforma de observabilidade e procure a telemetria. As etapas para localizar rastreamentos, métricas e logs variam de acordo com a plataforma. As seguintes capturas de tela são de painéis da plataforma de observabilidade baseada em Grafana.
Encontrar o serviço AEM
Procurar um nome de serviço do AEM semelhante a:
cm-p<program>-e<environment>-aem-publish-<environment-type>
Na plataforma auto-hospedada usada neste tutorial, a telemetria do serviço de Publicação é exibida da seguinte maneira:
Inspecionar rastreamentos
Procure extensões de solicitação HTTP de entrada que correspondam às solicitações de sua página WKND. Abra um rastreamento e revise o nome da solicitação, a duração e os intervalos relacionados.
Inspecionar métricas
Como a configuração define metrics: true, procure métricas JVM e HTTP como uso de memória, duração da coleta de lixo, contagem de threads e duração da solicitação HTTP.
Inspecionar logs
Como os conjuntos de configurações logs: true, verifique se há logs de aplicativo do AEM no seu destino. A integração exporta logs em um limite de severidade com suporte (WARN ou superior), portanto, visitas de página comuns podem não produzir entradas de log nesse nível.
Resolução de problemas
Se o Pipeline de configuração falhar ou a telemetria não aparecer na sua plataforma de observabilidade, revise os logs do pipeline e verifique o seguinte:
metadata.envTypes inclui o tipo de ambiente de destino (dev, stage ou prod). Uma incompatibilidade faz com que a configuração seja ignorada sem um erro.OTEL_CUSTOMER_AUTH existe como uma variável de ambiente secreta do Cloud Manager, com Serviço aplicado definido como Todos. Ela não deve ser uma variável de pipeline.401 ou 403)service.name.logs: true está configurado e se o aplicativo AEM gerou entradas de log no nível AVISO ou superior.Se o problema persistir, entre em contato com o Suporte da Adobe e forneça a ID do programa da AEM, a ID do ambiente, a ID de execução do pipeline de configuração, a mensagem de erro exata e os detalhes do provedor de observação. Nunca inclua credenciais de autenticação ou valores secretos.
Para obter exemplos de configuração adicionais e informações de solução de problemas, consulte a documentação do produto OpenTelemetry.
Próximas etapas
Você configurou o OpenTelemetry para o AEM as a Cloud Service e verificou que a telemetria do aplicativo de amostra WKND está disponível na sua plataforma de observabilidade.
Agora você pode usar essa telemetria para investigar solicitações lentas ou com falha, monitorar o desempenho de JVM e HTTP e correlacionar logs de aplicativos com rastreamentos para entender melhor o comportamento do aplicativo AEM.
Para estender a telemetria para a lógica específica do aplicativo, consulte Instrumentação personalizada com OpenTelemetry.
Para explorar opções de configuração adicionais, provedores de observação compatíveis e requisitos de rede, consulte a documentação do produto OpenTelemetry.