Visualize a topologia e monitore da integridade operacional da aplicação com o mapa da aplicação do CloudWatch - Amazon CloudWatch

Visualize a topologia e monitore da integridade operacional da aplicação com o mapa da aplicação do CloudWatch

nota

O mapa da aplicação do CloudWatch substitui o Service Map. Para ver um mapa da aplicação com base em rastreamentos do AWS X-Ray, abra o Mapa de rastreamento do X-Ray. Escolha Mapa de rastreamento na seção X-Ray no painel de navegação esquerdo do console do CloudWatch.

Depois de habilitar a aplicação para o Application Signals, o mapa da aplicação exibe nós que representam os grupos. Em seguida, você detalha esses grupos para visualizar os serviços e suas dependências. Use o mapa da aplicação para visualizar a topologia dos clientes da aplicação, canários do Synthetics, serviços e dependências, e para monitorar a integridade operacional. Para visualizar o mapa da aplicação, abra o console do CloudWatch e escolha Mapa da aplicação na seção Application Signals no painel de navegação esquerdo.

Depois de habilitar a aplicação para o Application Signals, use o mapa da aplicação para facilitar o monitoramento da integridade operacional da aplicação:

  • Visualize as conexões entre o cliente, o canário, o serviço e os nós de dependência para ajudar a entender a topologia da aplicação e o fluxo de execução. Isso é especialmente útil quando os operadores de serviços não são a equipe de desenvolvimento.

  • Veja quais serviços estão alcançando ou não seus objetivos de nível de serviço (SLOs). Quando um serviço não está alcançando os SLOs, você pode identificar rapidamente se um serviço ou dependência downstream pode estar contribuindo para o problema ou afetando vários serviços upstream.

  • Selecione um cliente individual, um canário do Synthetics, um serviço ou um nó de dependência para visualizar as métricas relacionadas. A página Detalhes do serviço apresenta informações mais detalhadas sobre as operações, as dependências, os canários do Synthetics e as páginas de clientes.

  • Filtre e amplie o mapa da aplicação para enfocar uma parte específica da topologia da aplicação ou visualizar o mapa completo com mais facilidade. Crie um filtro escolhendo uma ou mais propriedades na caixa de texto do filtro. Ao escolher cada propriedade, você é guiado pelos critérios do filtro. Você verá o filtro completo abaixo da caixa de texto do filtro. Escolha Limpar filtros a qualquer momento para remover o filtro.

  • Monitore os serviços em várias contas da AWS em um único mapa de aplicação unificado. Os serviços nas diferentes contas são claramente identificados com as informações da conta, permitindo a observabilidade unificada de aplicações distribuídas.

  • Identifique os serviços ainda não instrumentados na aplicação. O Application Signals detecta e exibe automaticamente os serviços que ainda não foram instrumentados, o que ajuda a obter total cobertura de observabilidade. Os serviços não instrumentados são visualmente diferenciados no mapa para ajudar a priorizar esforços de instrumentação.

  • Agrupe e filtre os serviços para criar visões personalizadas que correspondam aos fluxos de trabalho. Essa organização ajuda a encontrar e acessar rapidamente os serviços usados com mais frequência

  • Salve as visões filtradas e agrupadas para voltar rapidamente às configurações usadas com frequência

Explorar o mapa da aplicação

Quando você visita o mapa da aplicação, por padrão, ele mostra os serviços agrupados por Serviços relacionados. Os serviços relacionados agrupam os serviços com base em suas dependências. Por exemplo, se o Serviço A chama o Serviço B, que chama o Serviço C, eles são agrupados no Serviço A. Você pode ver a integridade do SLI, as métricas e a contagem do serviço para todos os serviços de cada grupo.

Mapa da aplicação padrão do CloudWatch com agrupamento por serviços relacionados.

Escolha uma guia para obter informações sobre como explorar cada tipo de nó e as bordas (conexões) entre eles.

Agrupamento e filtragem dinâmica

Você pode clicar no menu suspenso Agrupar por para usar diferentes opções de agrupamento. Por padrão, Mapa da aplicação apresenta dois agrupamentos:

  • Serviços relacionados: agrupa os serviços com base em suas dependências

  • Ambiente: agrupa serviços por seu ambiente

Se você quiser definir seu próprio agrupamento personalizado, clique em Gerenciar grupos para definir grupos personalizados e marque os serviços ou adicione atributos do recurso OTEL com a chave de grupo.

nota

Para permitir o agrupamento por atributos do recurso OTEL, a versão do agente CloudWatch deve ser v1.300056.0 ou posterior.

Criar painel de agrupamento personalizado

O agrupamento padrão no Application Signals organiza automaticamente os serviços com base em suas dependências posteriores. O sistema analisa o gráfico de dependências do serviço e cria grupos nos quais o nó-raiz (um serviço sem dependências acima) se torna o nome do grupo. Todos os serviços que dependem desse serviço-raiz, direta ou indiretamente, são incluídos automaticamente no grupo. Por exemplo, se o Serviço A chamar o Serviço B, que por sua vez chama o Serviço C, todos os três serviços serão agrupados, com o Serviço A sendo o nome do grupo, pois ele é a raiz da cadeia de dependências. Esse mecanismo de agrupamento automático oferece uma maneira natural de visualizar e gerenciar serviços relacionados com base em suas interações e dependências reais no runtime.

Ações e insights de grupo

Para cada grupo, você pode realizar as seguintes ações:

  • Clicar em Visualizar mais para visualizar gráficos das métricas, os dois últimos eventos de alteração e a hora da última implantação do grupo

    Visualizar mais gavetas para o grupo no mapa da aplicação
  • Clicar em Visualizar painel para visualizar o painel de métricas, a tabela de eventos de alteração e a lista de serviços do grupo

    Visualizar o painel da aplicação para o grupo
    Visualizar o painel da aplicação para o grupo com gráficos de métricas

Você pode usar Agrupar e filtrar na barra esquerda para filtrar grupos que têm serviços com hora de implantação, status de integridade do SLI ou tipo de plataforma de computação.

Agrupar e filtrar serviços no painel da aplicação

Você também pode filtrar por conta para visualizar os serviços de contas específicas da AWS na configuração de observabilidade entre contas.

Filtrar serviços por conta no painel da aplicação

Use a barra Pesquisar e filtrar para pesquisar grupos por nome ou pesquisar grupos que contenham determinado ambiente ou dependência de serviço. Filtrar por ID da conta para enfocar serviços de contas específicas.

Pesquisar e filtrar serviços no mapa da aplicação

Configurar grupos personalizados

O agrupamento personalizado permite organizar os serviços de modo lógico, com base em requisitos comerciais e prioridades operacionais. Esse atributo permite visualizar e salvar visões definidas priorizadas de acordo com suas necessidades específicas, criar grupos com base na propriedade da equipe e reunir grupos de serviços necessários para transações comerciais críticas.

Crie os nomes de grupos personalizados (os nomes dos grupos que verá na interface do usuário) e os nomes de chave de grupo correspondentes. Conclua esta etapa na interface do usuário do Application Signals ou na API PutGroupingConfiguration.

Os nomes das chaves de grupo podem ser a chave de tag da AWS ou o atributo do recurso OTEL do serviço. Ao decidir entre tags e atributos do recurso OTEL, leve em conta a plataforma de computação:

  • Para plataformas de um único serviço (por exemplo, Lambda ou grupo do Auto Scaling), use tags da AWS

  • Para plataformas multiserviços (por exemplo, cluster do Amazon EKS), use atributos do recurso OTEL para obter um agrupamento mais granular

Adicionar tags da AWS

Adicione a um cluster do Amazon EKS uma tag da AWS com a chave de grupo personalizada como uma chave e um valor. Quando há vários serviços em execução em um cluster do Amazon EKS, todos eles são marcados com a mesma chave de grupo personalizada. Por exemplo, quando o cluster A do Amazon EKS tem o Serviço 1, o Serviço 2 e o Serviço 3 em execução, adicionar ao cluster uma tag da AWS com a chave Equipe X adicionará todos os três serviços à Equipe X. Para adicionar somente determinados serviços à Equipe X, adicione os atributos do recurso OTEL para os serviços, como mostrado abaixo.

Adicionar atributos do recurso OTEL

Para adicionar um atributo do recurso OTEL, veja a configuração abaixo:

Configuração geral

Configure a variável de ambiente OTEL_RESOURCE_ATTRIBUTES na aplicação usando os pares de chave-valor do grupo personalizado. As chaves são listadas em aws.application_signals.metric_resource_keys separadas por &.

Por exemplo, para criar grupos personalizados com Application=PetClinic e Owner=Test, use o seguinte:

OTEL_RESOURCE_ATTRIBUTES=Application=PetClinic,Owner=Test,aws.application_signals.metric_resource_keys=Application&Owner

Configuração específica da plataforma

A seguir estão as especificações de implantação.

Amazon EKS e kubernetes nativo

apiVersion: apps/v1 kind: Deployment metadata: ... spec: replicas: 1 ... template: spec: containers: - name: your-app image: your-app-image env: ... - name: OTEL_RESOURCE_ATTRIBUTES value: Application=PetClinic,Owner=Test,aws.application_signals.metric_resource_keys=Application&Owner

Amazon EC2

Adicione OTEL_RESOURCE_ATTRIBUTES ao script de início da aplicação. Para ver um exemplo completo, consulte Adicionar OTEL_RESOURCE_ATTRIBUTES.

... OTEL_RESOURCE_ATTRIBUTES="service.name=$YOUR_SVC_NAME,Application=PetClinic,Owner=Test,aws.application_signals.metric_resource_keys=Application&Owner" \ java -jar $MY_JAVA_APP.jar

Amazon ECS

Adicione OTEL_RESOURCE_ATTRIBUTES a TaskDefinition. Para ver o exemplo completo, consulte Habilitar no Amazon ECS.

{ "name": "my-app", ... "environment": [ { "name": "OTEL_RESOURCE_ATTRIBUTES", "value": "service.name=$YOUR_SVC_NAME,Application=PetClinic,Owner=Test,aws.application_signals.metric_resource_keys=Applicationmanagement portalOwner" }, ... ] }

Lambda

Adicione OTEL_RESOURCE_ATTRIBUTES à variável de ambiente do Lambda.

OTEL_RESOURCE_ATTRIBUTES="Application=PetClinic,Owner=Test,aws.application_signals.metric_resource_keys=Application&Owner"

Visualizar serviços em grupos

Para visualizar os serviços e suas dependências em um grupo, clique no nome do grupo. Isso mostrará um mapa dos serviços do grupo. Cada nó de serviço mostrará a integridade do SLI, as métricas e detalhes da plataforma. Os serviços com violação de SLI são destacados para fácil identificação.

Serviços de um grupo no mapa da aplicação do CloudWatch.

Os serviços não instrumentados são exibidos com um indicador visual distintivo (como uma borda tracejada ou uma cor diferente) para diferenciá-los dos serviços instrumentados. Passe o mouse sobre um nó de serviço não instrumentado para ver as orientações para instrumentação e links para a documentação de configuração.

Filtrar por serviços não instrumentados no mapa da aplicação

Todos os nós de canários, clientes RUM e serviço da AWS estarão recolhidos por padrão. Se os serviços desse grupo chamarem serviços que não fazem parte do grupo, também estarão recolhidos por padrão.

Os nós de canários ficam recolhidos em um grupo no mapa da aplicação

Se o mapa ainda estiver muito grande para uma investigação eficaz, será possível aplicar o agrupamento aninhado para limitar a investigação. Por exemplo, depois de agrupar os serviços por unidade de negócios, se um grupo ainda incluir muitos serviços, use o menu suspenso Agrupar por para selecionar Equipe, criando uma estrutura de agrupamento aninhada.

Agrupamento aninhado em mapa da aplicação

Insights e detalhes do serviço

Nessa página, você também pode clicar em Salvar visão ao lado da barra de pesquisa para salvar a visão e não precisar aplicar novamente o mesmo agrupamento e filtragem a próxima vez.

Salvar configuração de agrupamento

Clique em Visualizar mais no nó do serviço para ver os gráficos Auditoria do serviço, Eventos de alteração, integridade do SLI e Métricas.

Insights do serviço do mapa da aplicação do CloudWatch.

Se você quiser visualizar a operação e outros detalhes do serviço, clique em Visualizar painel para ir para a página de visão geral do serviço.

Visão geral do serviço do mapa da aplicação do CloudWatch.

Como alternativa, você pode clicar em Borda para visualizar as métricas de uma chamada de dependência específica de um serviço.

Gaveta de borda do nó do mapa da aplicação do CloudWatch

Eventos de alteração

Acompanhe eventos de alteração em toda a aplicação com o processamento automático de eventos do CloudTrail do Application Signals. Monitore os eventos de configuração e implantação de serviços e suas dependências, o que fornece contexto imediato para análise operacional e solução de problemas. A detecção de eventos de alteração é habilitada junto com a habilitação da descoberta de serviços usando o console do CloudWatch ou a API StartDiscovery. Nos serviços do EKS, a detecção de implantação exige que os serviços do EKS sejam instrumentalizados com o SDK de instrumentação do Application Signals. O Application Signals correlaciona automaticamente os horários de implantação com alterações de performance, ajudando a identificar rapidamente se recentes implantações contribuíram para causar problemas do serviço. Visualize o histórico de eventos de alteração e seu impacto nos serviços sem necessidade de instalação ou configuração adicional.

Descobertas de auditoria

Descubra insights críticos por meio das descobertas de auditoria do Application Signals. O serviço analisa as aplicações para relatar observações significativas e possíveis problemas, simplificando a análise de causa primária. Essas descobertas automatizadas consolidam os rastros relevantes, eliminando a necessidade de navegar por meio de vários cliques. O sistema de auditoria ajuda as equipes a identificar rapidamente os problemas e suas causas subjacentes, permitindo uma resolução mais rápida.

Observabilidade multiconta no mapa da aplicação

O Application Signals é compatível com observabilidade entre contas, permitindo monitorar e visualizar serviços distribuídos por várias contas da AWS em um mapa unificado da aplicação. Esse recurso é essencial para organizações com arquiteturas de multicontas que seguem as práticas recomendadas da AWS.

Principais recursos:

  • Visão unificada: visualize serviços de várias contas da AWS em um único mapa da aplicação, que apresenta uma visão completa de arquitetura de aplicação distribuída.

  • Identificação da conta: cada nó de serviço exibe claramente seu ID de conta e região, facilitando a identificação da propriedade e da localização do serviço.

  • Monitoramento centralizado: monitore a integridade, a performance e o status do SLO dos serviços em todas as contas conectadas em uma única conta de monitoramento.

  • Filtragem multiconta: filtre e agrupe os serviços por ID de conta para focalizar contas específicas ou visualizar interações entre contas.

Como ele funciona:

O Application Signals usa o AWS Organizations e compartilhamento entre contas para propiciar a observabilidade em todas as contas. Para configurar a observabilidade entre contas, consulte Observabilidade entre contas do CloudWatch.

View your application services

Serviço (instrumentado)

É possível visualizar os serviços da aplicação e o status de seus SLOs e indicadores de nível de serviço (SLIs) no Mapa da Aplicação. Se você não criou SLOs para um serviço, escolha o botão Criar SLO abaixo do nó do serviço.

O Mapa da Aplicação exibe todos os serviços. Além disso, ele mostra os clientes e os canários que consomem o serviço e as dependências que os serviços chamam, conforme mostra na seguinte imagem:

Um mapa da aplicação do CloudWatch exibindo serviços íntegros e não íntegros.

Ao selecionar um nó de serviço, um painel é aberto para exibir informações detalhadas do serviço:

  • Taxa total de erros e falhas.

  • O número de SLIs e de SLOs que são healthy ou unhealthy.

  • A opção de visualizar mais informações sobre um SLO.

  • O Cluster, Namespace e Workload dos serviços hospedados no Amazon EKS ou o ambiente de serviços hospedados no Amazon ECS ou no Amazon EC2. Para serviços hospedados no Amazon EKS, escolha qualquer link para abrir o CloudWatch Container Insights.

  • AccountId e região.

  • A seção Alteração mostra os eventos de alteração recentes e a hora da última implantação.

  • A guia Auditoria operacional apresenta os resultados e as recomendações da auditoria automatizada.

  • Gráfico Métricas do serviço de disponibilidade, latência, falhas e erros.

Selecione uma borda ou uma conexão entre um nó de serviço e um serviço downstream ou um nó de dependência. Isso abre um painel que contém os principais caminhos por taxa de falhas, latência e taxa de erros, conforme mostrado na imagem de exemplo apresentada a seguir. Escolha qualquer link no painel para abrir a página Detalhes do serviço e visualizar as informações detalhadas da dependência ou do serviço escolhido.

Um mapa de serviços para a borda de um serviço do CloudWatch

Ao selecionar um nó de borda, um painel é aberto com informações detalhadas do serviço:

  • Contagem total de solicitações, latência, taxa de erros e taxa de falhas

  • Caminho com a maior taxa de falhas

  • Caminho com a maior latência

  • Caminho com a maior taxa de erros

Serviço (não instrumentado)

Os serviços não instrumentados aparecem no Mapa da Aplicação mesmo quando não foram configurados com o Application Signals. Esses serviços são descobertos automaticamente com o Explorador de Recursos usando nomes e tags de aplicações. O sistema pode detectar automaticamente até 3 mil recursos em sua conta da AWS.

Ao selecionar um nó de serviço não instrumentado, um painel é aberto exibindo:

  • Nome do serviço e informações de identificação

  • AccountId e região onde o serviço é detectado

  • Status e orientação de instrumentação

  • Botão de chamada à ação “Habilitar Application Signals” que fornece instruções de configuração

  • Tipo de plataforma de computação (se detectável)

Os serviços não instrumentados ajudam a:

  • Identificar lacunas na cobertura de observabilidade

  • Priorizar quais são os próximos serviços a instrumentar com base em sua na arquitetura

  • Entender toda a topologia da aplicação mesmo antes da instrumentação total

  • Planejar a implantação da instrumentação em toda a sua organização

nota

Os serviços não instrumentados exibem dados de telemetria limitados, pois não enviam ativamente métricas nem rastros.

Filtro de instrumentação de mapa de aplicação do CloudWatch
View dependencies

As dependências da aplicação são exibidas no mapa da aplicação, conectadas aos serviços que as chamam.

Escolha um nó de dependência para abrir um painel que inclui a taxa de erros e a taxa de falhas, um gráfico de métricas de solicitação, disponibilidade, latência, taxa de falhas e taxa de erros.

Se o nó de dependência for um serviço ou recurso, o painel exibirá eventos de alteração para o intervalo de tempo solicitado.

Um mapa da aplicação do CloudWatch exibindo um nó expansível de dependência de serviços da AWS.
View clients

Depois de ativado o rastreamento do X-Ray para os clientes Web do CloudWatch RUM, eles são exibidos no mapa da aplicação conectados aos serviços que eles chamam.

Escolha um nó de cliente para abrir um painel que exibe as informações detalhadas do cliente:

  • Métricas de carregamento de páginas, tempo médio de carregamento, erros e média de sinais de integridade da Web

  • Um gráfico exibindo um detalhamento de erros

  • Um link para exibir os detalhes do cliente no CloudWatch RUM

Um mapa da aplicação do CloudWatch exibindo um nó de cliente expansível.

Escolha Visualizar painel para abrir os detalhes do canário.

View synthetics canaries

Para visualizar os canários no mapa da aplicação, ative a opção Rastreamento X-Ray para os canários do CloudWatch Synthetics. Uma vez habilitados, os canários serão exibidos no mapa da aplicação conectados aos serviços que eles chamam.

O sistema agrupa os canários, por padrão, em um único ícone expansível. O painel de informações detalhadas do canário exibe métricas, rastros e informações de status.

Escolha um nó de canário para abrir um painel que exibe as informações detalhadas do canário, conforme mostrado na seguinte imagem:

Um mapa da aplicação do CloudWatch exibindo um nó expansível de canário do Synthetics.

Escolha Visualizar painel para abrir os detalhes do canário.