Ao configurar o Google Cloud Observability para o Application Monitoring, é possível visualizar e analisar registros, métricas e rastreamentos 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, configure o escopo de observabilidade, que inclui o escopo de registros, o escopo de métricas e o escopo de rastreamento 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 App Design Center.
Para mostrar alertas associados a aplicativos nos painéis do Application Monitoring, você também pode associar suas políticas de alerta ao aplicativo do App Hub. Se você executa cargas de trabalho no Google Kubernetes Engine e quer que os painéis do Application Monitoring mostrem o tráfego HTTP, a latência e os indicadores de ouro de taxa de erros, consulte Instrumentar um aplicativo para o Application Monitoring.
Antes de começar
Identifique o projeto cujo escopo de observabilidade você vai configurar. O projeto é um dos seguintes:
- Um projeto host do App Hub.
- Um projeto de gerenciamento do App Hub para seu 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 necessários do IAM dependem de você planejar criar um gravador agregado, que permite centralizar o armazenamento de dados de registros.
Configurar o coletor e os 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 que conceda a você os seguintes papéis do IAM:
- Editor de observabilidade (
roles/observability.editor) no projeto de host ou de gerenciamento do App Hub - Gravador de configuração de registros (
roles/logging.configWriter) no projeto host ou de gerenciamento do App Hub - Administrador do Monitoring (
roles/monitoring.admin) no projeto de host ou de gerenciamento do App Hub e em cada projeto que você quer adicionar ao escopo de métricas - Usuário do Cloud Trace (
roles/cloudtrace.user) no projeto de host ou de gerenciamento do App Hub - Leitor do App Hub (
roles/apphub.viewer) no projeto host ou de gerenciamento do App Hub
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.
- Editor de observabilidade (
Configurar o escopo de observabilidade
O escopo de observabilidade controla como as páginas do explorador e do painel pesquisam os dados a serem mostrados. Cada projeto Google Cloud contém um únicoescopo de observabilidade. Não é possível configurar diretamente o escopo de observabilidade de um projeto. Em vez disso, configure o seguinte no seu projeto:
O escopo do registro padrão
Configure esse escopo para que, ao abrir a página Análise de registros ou visualizar dashboards, os dados de registro do seu aplicativo sejam mostrados. Verifique se esse escopo lista os projetos e as visualizações de registros que armazenam os dados de registros do seu aplicativo.
O escopo de métricas
Configure esse escopo para que seus gráficos, por exemplo, aqueles criados usando a página Metrics Explorer, e as políticas de alertas possam mostrar ou monitorar os dados de métricas do seu aplicativo. Verifique se esse escopo lista os projetos que armazenam os dados de métricas do aplicativo.
O escopo de rastreamento padrão
Configure esse escopo para que, ao abrir a página Explorador de traces, os dados de rastreamento do seu aplicativo sejam exibidos. Verifique se esse escopo lista os projetos que armazenam os dados de rastreamento do 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 direcione todos os dados de registro da sua organização para um bucket de registros centralizado, recomendamos o seguinte:
Crie uma visualização de registros no bucket de registros centralizado para os registros do aplicativo.
No projeto host do App Hub ou no projeto de gerenciamento, crie um escopo de registros, 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:
Crie um coletor agregado de interceptação para sua pasta habilitada para apps e direcione esses registros para o bucket de registros
_Defaultdo projeto de gerenciamento da sua pasta habilitada para apps.No projeto de gerenciamento da sua pasta habilitada para apps, verifique se o escopo do registro chamado
_Defaultestá definido como o escopo do registro padrão. O escopo chamado_Defaultlista a visualização_AllLogsno bucket de registros_Defaultdo projeto, que é o local de armazenamento centralizado do aplicativo.
Se você não estiver usando um coletor agregado, configure o escopo de registros padrão do projeto host ou de gerenciamento do App Hub para listar os locais de armazenamento dos dados de registros do aplicativo. Recomendamos adicionar visualizações de registros aos buckets que armazenam seus dados de registro.
Por exemplo, suponha que você tenha configurado uma pasta habilitada para apps e não esteja usando um coletor agregado. Em seguida, faça o seguinte:
- No projeto de gerenciamento da sua pasta habilitada para apps, crie um escopo do registro.
Adicione ao escopo do registro uma visualização de registros para cada projeto na pasta, incluindo o projeto de gerenciamento.
A visualização adicionada é a
_AllLogsno bucket de registros_Defaultdo projeto. Essa visualização inclui todos os registros no bucket de registros_Default, que armazena os dados de registro do aplicativo._DefaultDepois 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-folderVocê salva e define o escopo de registro como padrão.
Configurar o escopo das 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 seu 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 nas métricas de escopo. Por exemplo, se você adicionar um projeto à pasta ativada para apps, um comando será emitido para adicionar esse projeto ao escopo de métricas.
Quando o número de projetos na pasta ativada para apps não excede a cota do escopo de métricas, que é de 375 projetos por escopo, o Google Cloud Observability pode manter a lista de projetos no escopo de métricas sincronizada com a lista de projetos na pasta ativada 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 na pasta habilitada para apps. Se você adicionar projetos à pasta ativada para apps, eles também serão incluídos no escopo de métricas.
Quando o número de projetos na pasta ativada para apps excede a cota do escopo de métricas, a lista de projetos no escopo não inclui todos os projetos na pasta ativada 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 se esgota 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 sua pasta habilitada para apps.
Recomendamos que você analise o uso da cota de métricas de escopo e determine se é necessário solicitar uma atualização ou modificar manualmente o 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 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 os dados de métricas, também será necessário atualizar o escopo de métricas do projeto host.
Configurar e definir o escopo de rastreamento padrão
Faça o seguinte:
Para cada projeto que vai armazenar os dados de rastreamento do aplicativo, recomendamos ativar 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 receber essa permissão pelo papel de Administrador do Service Usage (roles/serviceusage.serviceUsageAdmin). Saiba como conceder papéis.No projeto host ou de gerenciamento do App Hub, crie um escopo de rastreamento e adicione projetos que armazenam os dados de rastreamento do aplicativo. Se você estiver usando uma pasta habilitada para apps, adicione os projetos nela.
Defina seu escopo de rastreamento personalizado como o padrão.
O gráfico de topologia só pode mostrar dados de rastreamento de projetos na mesma organização que o projeto host ou de gerenciamento.
Associar uma política de alertas a um aplicativo do App Hub
Para ver suas políticas de alertas no contexto do Application Monitoring, associe-as 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 conferir 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 Google Cloud , faça o seguinte:
-
No console do Google Cloud , acesse a página notifications Alertas:
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Monitoring.
- Na barra de ferramentas do console Google Cloud , selecione seu projeto host do App Hub ou projeto de gerenciamento.
- Encontre a política de alertas, clique em more_vert Ver mais, selecione Editar e acesse a seção Notificações e nome.
Na seção Marcadores de aplicativo, selecione seu aplicativo e, em seguida, selecione seu serviço ou carga de trabalho:
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_locationapphub_application_idapphub_service_idouapphub_workload_id
Também é possível adicionar identificadores definidos pelo usuário a uma política de alertas usando a Google Cloud CLI, o Terraform ou a API Cloud Monitoring. No entanto, você precisa 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 seus dados de registro, métricas e rastreamento. Esta seção resume os papéis que você pode querer conceder aos principais:
Accessor de visualização de registros (
roles/logging.viewAccessor) nas visualizações de registros listadas no escopo padrão de registros do projeto host ou de gerenciamento do App Hub. Para saber mais sobre como conceder acesso a uma visualização de registro, consulte Controlar o acesso a uma visualização de registro.Visualizador de registros (
roles/logging.viewer) no projeto host ou de gerenciamento do App Hub e em qualquer outro projeto listado no escopo do registro padrão. Essa função concede acesso à maioria das entradas de registro no bucket de registros_Default. Para mais informações, consulte Papéis do Logging.Papel de Editor do Monitoring (
roles/monitoring.editor) no projeto host ou de gerenciamento do App Hub. Para principais que não precisam criar políticas de alertas, considere conceder o papel de Leitor do Monitoring (roles/monitoring.viewer).Usuário do Cloud Trace (
roles/cloudtrace.user) no projeto host ou de gerenciamento do App Hub e nos projetos listados no escopo de rastreamento padrão.Leitor do App Hub (
roles/apphub.viewer) no projeto host ou de gerenciamento do App Hub.