Visão geral do armazenamento do Google Cloud Observability

O Google Cloud Observability armazena e organiza dados de telemetria do Cloud Logging, do Cloud Monitoring e do Cloud Trace em contêineres de armazenamento estruturados. Entender o modelo de armazenamento ajuda a configurar a residência de dados, aplicar políticas de criptografia e conectar a telemetria a serviços de análise, como o BigQuery.

Dados de registros

Os dados de registro ficam em buckets de registros, que são os contêineres usados pelo Logging para armazenar seus dados de registro. Quando o sistema cria um projeto, uma conta de faturamento, uma pasta ou uma organizaçãoGoogle Cloud , o Cloud Logging cria buckets de registros chamados _Required e _Default no recurso:

  • Local: o Cloud Logging seleciona o local desses buckets, a menos que as configurações padrão de recursos do Cloud Logging especifiquem um local. Não é possível mudar o local depois que os intervalos são criados.

  • Criptografia: esses buckets usam Google-owned and Google-managed encryption keys , a menos que as configurações de recursos padrão do Cloud Logging especifiquem uma chave de criptografia gerenciada pelo cliente (CMEK). Não é possível mudar essa configuração depois que os intervalos são criados.

Por padrão, os dados de registros ficam no projeto, na conta de faturamento, na pasta ou na organização Google Cloud de origem. No entanto, é possível configurar o Logging para rotear dados de registro do recurso de origem para outro local, como outro projeto ou um bucket de registros centralizado. Para mais informações, consulte Armazenar entradas de registro e Fazer o roteamento de entradas de registro.

Com o Cloud Logging, é possível regionalizar seus dados de registro:

  • As políticas da organização podem restringir os locais dos novos buckets de registros e exigir que eles usem a CMEK.
  • Para organizações e pastas, as configurações padrão de recursos do Cloud Logging permitem configurar o seguinte:

    • O local dos novos buckets de registros _Required e _Default
    • A chave do Cloud Key Management Service para criptografar seus dados de registro
    • A configuração do coletor padrão

    Os descendentes na hierarquia de recursos herdam automaticamente essas configurações, a menos que também configurem as configurações padrão de recursos. Por exemplo, se você configurar as configurações de recursos padrão do Cloud Logging para uma organização, todas as pastas e projetos na hierarquia de recursos da organização vão herdar essas configurações automaticamente. No entanto, se você definir as configurações de recursos padrão do Cloud Logging para uma pasta nessa organização, as configurações no nível da pasta serão usadas.

    As configurações de recursos padrão do Cloud Logging se aplicam apenas a recursos novos, não aos atuais. Para mais informações, consulte Configurar as definições de recursos padrão do Cloud Logging.

Dados de métricas

Os dados de métricas ficam no projeto Google Cloud de origem.

Para informações sobre as políticas de armazenamento, consulte Residência de dados para o Monitoring.

Rastrear dados

Os dados de rastreamento são armazenados em um conjunto de dados gerenciado pelo bucket de observabilidade chamado _Trace. Para armazenar o conjunto de dados, o bucket _Trace precisa existir. O bucket _Trace pode ser criado de forma automática ou manual:

  • Criação automática: o sistema cria automaticamente o bucket em resposta ao recebimento de dados de rastreamento de um aplicativo ou um serviço Google Cloud . O sistema usa as configurações padrão aplicáveis para buckets de observabilidade e determina o local e a chave de criptografia do bucket. Se você não tiver definido configurações padrão, o sistema vai selecionar um local compatível e o bucket vai usar a criptografia padrão do Google.

    Os dados de rastreamento gerados pelas funções do Cloud Run, pelo Cloud Run e pelo App Engine não fazem com que o sistema crie o bucket de observabilidade. Os intervalos desses serviços só são armazenados quando o bucket de observabilidade existe.

  • Criação manual: você pode usar a API Observability para criar o bucket _Trace antes que seu projeto Google Cloud receba dados de rastreamento. Você precisa informar o local do bucket. É possível fornecer uma chave do Cloud Key Management Service:

    • Se você fornecer uma chave, o sistema a usará para criptografar os dados armazenados.
    • Se você não fornecer uma chave do Cloud KMS, as configurações padrão aplicadas ao recurso pai do bucket vão determinar a chave de criptografia. Se as configurações padrão especificarem uma chave do Cloud KMS, ela vai criptografar os dados armazenados. Caso contrário, a criptografia padrão do Google será usada.

Quando o bucket _Trace é criado, o sistema também cria um conjunto de dados chamado Spans para o bucket e uma visualização chamada _AllSpans no conjunto de dados. Essa visualização inclui todos os dados do conjunto.

Para ver mais informações, consulte os seguintes tópicos:

Modelo de armazenamento de observabilidade

O modelo de armazenamento da API Observability depende da seguinte arquitetura:

Buckets de observabilidade
Um bucket de observabilidade é a entidade de gerenciamento para conjuntos de dados, que armazenam dados. Um bucket de observabilidade está em um local específico e tem uma política de retenção de dados. Quando um serviço do Google Cloud usa a API Observability para armazenar dados, o sistema cria um bucket de observabilidade com base no nome do serviço, um conjunto de dados para armazenar dados e uma visualização para fornecer acesso de leitura aos dados armazenados. Por exemplo, para o serviço Cloud Trace, o sistema nomeia o bucket criado pelo sistema _Trace, o conjunto de dados Spans e a visualização _AllSpans. Para saber mais sobre a estrutura de um bucket de observabilidade, consulte Bucket.
Conjuntos de dados
Um conjunto de dados armazena dados. O sistema cria automaticamente um conjunto de dados quando cria um bucket de observabilidade, que gerencia o conjunto de dados. Por exemplo, quando o sistema cria o bucket _Trace, ele também cria um conjunto de dados chamado Spans, que armazena seus dados de rastreamento. Para saber mais sobre a estrutura de um conjunto de dados, consulte Dataset.
Visualizações em conjuntos de dados
Cada conjunto de dados hospeda uma ou mais visualizações. Uma visualização fornece acesso de leitura a um subconjunto de entradas no conjunto de dados. O sistema cria uma visualização ao criar um conjunto de dados. Essa visualização inclui todos os dados do conjunto. O nome da visualização depende do serviço. Por exemplo, para o serviço Cloud Trace, o sistema cria uma visualização chamada _AllSpans no conjunto de dados Spans. Para saber mais sobre a estrutura de uma visualização, consulte View.
Links em conjuntos de dados

Cada conjunto de dados pode conter no máximo um link. Quando você cria um vínculo para um conjunto de dados, o sistema cria um conjunto de dados vinculado do BigQuery. Em seguida, você pode consultar os dados no conjunto de dados usando o BigQuery ou outros serviços que usam a API BigQuery. Para saber mais sobre a estrutura de um link, consulte Link.

O sistema não cria links automaticamente em conjuntos de dados.

Por exemplo, os dados de rastreamento estão em um conjunto de dados Spans dentro do bucket de observabilidade _Trace. O sistema cria uma visualização _AllSpans nesse conjunto de dados que inclui todos os intervalos armazenados.

Residência de dados para buckets de observabilidade

Se você tiver requisitos regulamentares ou de compliance para armazenar seus dados em locais específicos ou usar chaves de criptografia gerenciadas pelo cliente (CMEKs), recomendamos configurar as políticas da organização e as configurações padrão para buckets de observabilidade.

Para organizações, pastas e projetos, as configurações padrão dos buckets de observabilidade permitem configurar o seguinte:

  • Um local de armazenamento padrão.
  • Para cada local, uma chave padrão do Cloud Key Management Service.

Há duas maneiras diferentes de o sistema usar as configurações padrão:

  • Quando o sistema cria automaticamente um bucket de observabilidade, ele usa as configurações padrão para determinar o local e a chave de criptografia do bucket. Se você não tiver definido configurações padrão, o sistema vai selecionar o local e o bucket vai usar a criptografia padrão do Google.

  • Ao iniciar a criação de um bucket de observabilidade emitindo uma solicitação de API, você informa o local. No entanto, o sistema usa automaticamente a chave do Cloud KMS definida pelas configurações padrão para criptografar os dados, a menos que os argumentos da solicitação de API especifiquem a chave.

Como o pai de um bucket de observabilidade é sempre um projeto, quando você cria um bucket, o sistema primeiro procura as configurações padrão para envolvidos no projeto. Se eles não existirem, o sistema vai pesquisar os ancestrais do elemento pai para encontrar as configurações padrão. Por exemplo, se você definir configurações padrão para uma pasta, elas serão aplicadas aos descendentes dela, exceto aqueles que já têm configurações padrão definidas.

Também é possível usar políticas da organização para restringir os locais de novos buckets de observabilidade, exigir o uso de CMEKs ou restringir quais chaves do Cloud KMS podem ser usadas para criptografia. Se você configurar políticas da organização que exigem o uso de CMEKs, será necessário configurar as definições padrão para os buckets de observabilidade. Caso contrário, o provisionamento dos buckets de observabilidade criados pelo sistema vai falhar.

Para mais informações, consulte Definir padrões para buckets de observabilidade.

Limitações

Não é possível fazer o seguinte:

  • Modifique ou exclua intervalos de observabilidade.
  • Criar, excluir ou modificar conjuntos de dados.
  • Criar, excluir ou modificar visualizações.
  • Use o console do Google Cloud para listar intervalos, conjuntos de dados, visualizações ou links.

A seguir