Configurar o Google Cloud Observability para o Application Monitoring

Ao configurar o Google Cloud Observability para monitoramento de aplicativos, é possível visualizar e analisar registros, métricas e traces dos aplicativos do App Hub em uma única interface, mesmo quando a telemetria é armazenada em vários projetos do Google Cloud . Para configurar o Google Cloud Observability, defina o escopo de observabilidade, que inclui o escopo de registro padrão, o escopo de métricas e o escopo de trace padrão, e conceda papéis do IAM. Essa configuração se aplica ao registrar um aplicativo existente no App Hub ou implantar aplicativos usando o Application Design Center.

Para mostrar alertas associados ao aplicativo nos painéis de monitoramento de aplicativos, também é possível associar suas políticas de alertas ao aplicativo do App Hub. Se você executa cargas de trabalho no Google Kubernetes Engine e quer que os painéis do Application Monitoring exibam os indicadores de ouro de tráfego HTTP, latência e taxa de erros, consulte Instrumentar um aplicativo para o Application Monitoring.

Antes de começar

  • Identifique o projeto em que você vai configurar o escopo de observabilidade. Este projeto é um dos seguintes:

    • Um projeto host do App Hub.
    • Um projeto de gerenciamento do App Hub para o limite de projeto único.
    • Um projeto de gerenciamento do App Hub para sua pasta habilitada para apps.

    Neste documento, quando o tipo de projeto de gerenciamento não é especificado, a tarefa de configuração se aplica a todos os projetos de gerenciamento.

  • Verifique se você tem os papéis necessários do Identity and Access Management (IAM) para configurar o escopo de observabilidade. Os papéis do IAM necessários dependem de você planejar ou não a criação de um coletor agregado, que permite centralizar o armazenamento de dados de registro.

    Configurar coletor e escopos

    Para receber as permissões necessárias para configurar escopos de observabilidade e criar um coletor de registros agregado, peça ao administrador para conceder a você o papel do IAM de Administrador da organização (roles/resourcemanager.organizationAdmin) na sua organização. Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

    Também é possível conseguir as permissões necessárias usando papéis personalizados ou outros papéis predefinidos.

    Configurar apenas escopos

    Para receber as permissões necessárias para configurar o escopo de observabilidade, peça ao administrador para conceder a você os seguintes papéis do IAM:

    Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

    Também é possível conseguir as permissões necessárias usando papéis personalizados ou outros papéis predefinidos.

Configurar o escopo de observabilidade

O escopo de observabilidade controla como as páginas do explorador e do painel pesquisam os dados a serem exibidos. Cada projeto do Google Cloud contém um único escopo de observabilidade. Não é possível configurar diretamente o escopo de observabilidade de um projeto. Em vez disso, para seu projeto, configure o seguinte:

  • O escopo do registro padrão

    Configure esse escopo para que, ao abrir a página do Análise de registros ou visualizar painéis, os dados de registro do aplicativo sejam exibidos. Verifique se esse escopo lista os projetos e as visualizações de registro que armazenam os dados de registro do aplicativo.

  • O escopo de métricas

    Configure esse escopo para que os gráficos, por exemplo, aqueles criados com a página do Metrics Explorer, e as políticas de alertas possam exibir ou monitorar os dados de métricas do aplicativo. Verifique se esse escopo lista os projetos que armazenam os dados de métricas do aplicativo.

  • O escopo de trace padrão

    Configure esse escopo para que, ao abrir a página do Trace Explorer, os dados de trace do aplicativo sejam exibidos. Verifique se esse escopo lista os projetos que armazenam os dados de trace do seu aplicativo.

O restante desta seção fornece orientações sobre como configurar esses escopos.

Configurar e definir o escopo do registro padrão

Escolha uma destas opções:

  • Se você tiver um coletor agregado no nível da organização que encaminhe todos os dados de registro da sua organização para um bucket de registros centralizado, recomendamos o seguinte:

    1. Crie uma visualização de registros no bucket de registros centralizado para os registros do aplicativo.

    2. No projeto host ou de gerenciamento do App Hub, crie um escopo de registro, adicione sua visualização de registros e defina esse escopo como o padrão.

  • Se você estiver usando uma pasta habilitada para apps e não tiver um coletor agregado no nível da organização ou pastas aninhadas, recomendamos o seguinte:

    1. Crie um coletor agregado de interceptação para sua pasta habilitada para apps e encaminhe esses registros para o bucket de registros _Default do projeto de gerenciamento da sua pasta habilitada para apps.

    2. No projeto de gerenciamento da pasta habilitada para apps, verifique se o escopo do registro chamado _Default está definido como o escopo do registro padrão. O escopo chamado _Default lista a visualização _AllLogs no bucket de registros _Default do projeto, que é o local de armazenamento centralizado do aplicativo.

  • Se você não estiver usando um coletor agregado, configure o escopo de registro padrão para o projeto host ou de gerenciamento do App Hub para listar os locais de armazenamento dos dados de registro do aplicativo. Recomendamos que você adicione visualizações de registros aos buckets de registros que armazenam seus dados de registro.

Por exemplo, suponha que você tenha configurado uma pasta habilitada para apps e que não esteja usando um coletor agregado. Em seguida, você pode fazer o seguinte:

  1. No projeto de gerenciamento da pasta habilitada para apps, crie um escopo do registro.
  2. Adicione ao escopo do registro uma visualização de registro para cada projeto na pasta, incluindo o projeto de gerenciamento.

    A visualização adicionada é a _AllLogs no bucket de registros _Default do projeto. Essa visualização inclui todos os registros no bucket de registros _Default, _Defaultque armazena os dados de registro do aplicativo.

    Depois de concluir essa etapa, o escopo do registro poderá ter entradas como as seguintes:

    _Default/_AllLogs     my-folder-mp
    _Default/_AllLogs     project-in-my-folder
    _Default/_AllLogs     another-project-in-my-folder
    
  3. Salve o escopo do registro e defina-o como o escopo padrão.

Configurar o escopo de métricas

Verifique se o escopo de métricas do projeto host ou de gerenciamento do App Hub lista todos os projetos que armazenam os dados de métricas do aplicativo:

  • Para pastas habilitadas para apps, o Google Cloud Observability tenta sincronizar a lista de projetos na pasta habilitada para apps com a lista de projetos no escopo de métricas. Por exemplo, se você adicionar um projeto à pasta habilitada para apps, um comando será emitido para adicionar esse projeto às métricas de escopo.

    Quando o número de projetos na pasta habilitada para apps não excede a cota de métricas de escopo, que é de 375 projetos por métricas de escopo, o Google Cloud Observability pode manter a lista de projetos nas métricas de escopo sincronizada com a lista de projetos na pasta habilitada para apps. Por exemplo, suponha que a cota seja de 375 projetos por métricas de escopo. Se a pasta habilitada para apps tiver 100 projetos, as métricas de escopo vão listar todos os projetos nela. Se você adicionar projetos à pasta habilitada para apps, eles também serão adicionados às métricas de escopo.

    Quando o número de projetos na pasta habilitada para apps excede a cota de métricas de escopo, a lista de projetos nas métricas de escopo não inclui todos os projetos na pasta habilitada para apps. Por exemplo, suponha que a cota seja de 375 projetos por métricas de escopo e que sua pasta habilitada para apps contenha 380 projetos. Depois que 375 projetos são adicionados ao escopo de métricas, a cota é esgotada e as tentativas de adicionar os cinco projetos restantes falham. Como resultado, alguns dados de aplicativos não estão disponíveis para o projeto de gerenciamento da pasta habilitada para apps.

    Recomendamos que você analise o uso da cota de métricas de escopo e determine se precisa solicitar uma atualização de cota ou modificar manualmente as métricas de escopo. Para mais informações sobre essas etapas, consulte Escopos de métricas para pastas habilitadas para apps.

  • Para projetos host do App Hub e para projetos de gerenciamento de limites de projeto único, é necessário configurar o escopo de métricas.

    Se você mudar o conjunto de projetos que armazenam seus dados de métricas, também será necessário atualizar o escopo de métricas do projeto host.

Configurar e definir o escopo de trace padrão

Faça o seguinte:

  1. Para cada projeto que armazenará os dados de trace do aplicativo, recomendamos que você ative a API Observability:

    Funções necessárias para ativar APIs

    Para ativar APIs, você precisa da permissão serviceusage.services.enable. Se você criou o projeto, provavelmente já tem essa permissão pelo papel de proprietário (roles/owner). Caso contrário, é possível conseguir essa permissão pelo papel de administrador do Service Usage (roles/serviceusage.serviceUsageAdmin). Saiba como conceder papéis.

    Ativar a API

  2. No projeto host ou de gerenciamento do App Hub, crie um escopo de trace e adicione projetos que armazenam os dados de trace do aplicativo. Se você estiver usando uma pasta habilitada para apps, adicione os projetos nela.

  3. Defina o escopo de trace personalizado como o escopo de trace padrão.

    O gráfico de topologia só pode mostrar dados de trace de projetos na mesma organização que o projeto host ou o projeto de gerenciamento.

Associar uma política de alertas a um aplicativo do App Hub

Para ver as políticas de alertas no contexto do Monitoramento de Aplicativos, é necessário associá-las a um serviço ou carga de trabalho adicionando rótulos específicos do aplicativo à política de alertas. Esses rótulos definidos pelo usuário também são incluídos em todos os alertas criados para uma política. Para saber mais sobre rótulos, consulte Anotar alertas com rótulos. Para ver uma lista de rótulos do App Hub, consulte Acessar a telemetria de aplicativo.

Para associar uma política de alertas a uma carga de trabalho ou serviço usando o console do Google Cloud , faça o seguinte:

  1. No console do Google Cloud , acesse a página  Alertas:

    Acessar Alertas

    Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Monitoring.

  2. Na barra de ferramentas do console doGoogle Cloud , selecione o projeto host ou de gerenciamento do App Hub.
  3. Encontre a política de alertas, clique em Ver mais, selecione Editar e acesse a seção Notificações e nome.
  4. Na seção Rótulos do aplicativo, selecione o aplicativo e, em seguida, o serviço ou a carga de trabalho:

    Página de política de alertas mostrando como associar uma política de alertas aos rótulos do App Hub.

  5. Clique em Salvar política.

Depois de concluir essas etapas, os rótulos com as seguintes chaves serão anexados à sua política de alertas. Esses rótulos identificam seu aplicativo e seu serviço ou carga de trabalho:

  • apphub_application_location
  • apphub_application_id
  • apphub_service_id ou apphub_workload_id

Também é possível adicionar rótulos de usuário a uma política de alertas usando a Google Cloud CLI, o Terraform ou a API Cloud Monitoring. No entanto, é preciso usar as chaves de rótulo mostradas no exemplo anterior. Para ver mais informações, consulte os seguintes tópicos:

Conceder acesso

O IAM gerencia o acesso aos dados de registro, métrica e trace. Esta seção resume os papéis que você pode conceder aos principais:

A seguir