Couchbase

A integração do Couchbase coleta métricas de bucket, como operações, uso de memória e ejeções. A integração coleta métricas do servidor Prometheus expostas em um nó. A integração também coleta registros gerais do Couchbase, acesso HTTP e entre data centers ("goxdcr").

Para mais informações sobre o Couchbase, consulte a documentação do Couchbase.

Pré-requisitos

Para coletar a telemetria do Couchbase, é preciso instalar o agente de operações versão 2.18.2 ou mais recente.

Essa integração é compatível com as versões 6.5, 6.6 e 7.0 do sofá.

Configurar o agente de operações para o Couchbase

Seguindo o guia de Como configurar o Agente de operações, adicione os elementos necessários para coletar a telemetria de instâncias do Couchbase e reinicie o agente.

Exemplo de configuração

O comando a seguir cria a configuração para coletar e ingerir a telemetria para o Couchbase e reinicia o Agente de operações.

# Configures Ops Agent to collect telemetry from the app and restart Ops Agent.

set -e

# Create a back up of the existing file so existing configurations are not lost.
sudo cp /etc/google-cloud-ops-agent/config.yaml /etc/google-cloud-ops-agent/config.yaml.bak

# Configure the Ops Agent.
sudo tee /etc/google-cloud-ops-agent/config.yaml > /dev/null << EOF
metrics:
  receivers:
    couchbase:
      type: couchbase
      username: admin
      password: password
      collection_interval: 30s
  service:
    pipelines:
      couchbase:
        receivers:
          - couchbase

logging:
  receivers:
    couchbase_general:
      type: couchbase_general
    couchbase_http_access:
      type: couchbase_http_access
    couchbase_goxdcr:
      type: couchbase_goxdcr
  service:
    pipelines:
      couchbase:
        receivers:
          - couchbase_general
          - couchbase_http_access
          - couchbase_goxdcr

EOF

sudo service google-cloud-ops-agent restart
sleep 30s

O que é registrado

O logName é derivado dos IDs do receptor especificados na configuração. Os campos detalhados dentro de LogEntry são os seguintes.

Os registros couchbase_general contêm os seguintes campos no LogEntry:

Campo Tipo Descrição
jsonPayload.level string Gravidade da entrada de registro do couchbase
jsonPayload.message string Mensagem de registro
jsonPayload.module_name string O nome do módulo que está enviando a entrada
jsonPayload.node_name string O nome do nó que emite a mensagem de registro
jsonPayload.source string Procure a origem do registro
jsonPayload.type string O tipo de registro
severity string (LogSeverity) Nível de entrada de registro (traduzido).

Os registros couchbase_http_access contêm os seguintes campos no LogEntry:

Campo Tipo Descrição
httpRequest objeto Consulte HttpRequest
jsonPayload.host string O endereço IP do cliente que está invocando a solicitação HTTP
jsonPayload.level string Gravidade da entrada de registro do couchbase
jsonPayload.message string Mensagem de registro
jsonPayload.user string O nome do usuário que faz a solicitação HTTP se uma autenticação básica for usada.
severity string (LogSeverity) Nível de entrada de registro (traduzido).

Os registros couchbase_goxdcr contêm os seguintes campos no LogEntry:

Campo Tipo Descrição
jsonPayload.level string Gravidade da entrada de registro do couchbase
jsonPayload.log_type string O nome do componente que está emitindo o registro de vários data centers
jsonPayload.message string Mensagem de registro
severity string (LogSeverity) Nível de entrada de registro (traduzido).

Configurar a coleta de métricas

Para ingerir métricas do couchbase, crie um receptor para as métricas produzidas por ele e um pipeline para o novo receptor.

Esse receptor não aceita o uso de várias instâncias na configuração, por exemplo, para monitorar vários endpoints. Todas essas instâncias gravam na mesma série temporal, e o Cloud Monitoring não tem como diferenciá-las.

Para configurar um receptor para suas métricas do couchbase, especifique os campos a seguir:

Campo Padrão Descrição
collection_interval 60s Um valor de time.Duration, como 30s ou 5m.
endpoint localhost:8091 O URL do nó a ser monitorado.
password A senha usada para se conectar ao servidor do Couchbase.
type Este valor precisa ser couchbase.
username O nome de usuário usado para se conectar ao servidor do Couchbase.

O que é monitorado?

A tabela a seguir fornece a lista de métricas que o Agente de operações coleta da instância do Couchbase.

Tipo de métrica 
Tipo, tipo
Recursos monitorados
Rótulos
workload.googleapis.com/couchbase.bucket.error.oom.count
CUMULATIVEINT64
gce_instance
bucket_name
error_type
workload.googleapis.com/couchbase.bucket.item.count
GAUGEDOUBLE
gce_instance
bucket_name
state
workload.googleapis.com/couchbase.bucket.item.ejection.count
CUMULATIVEINT64
gce_instance
bucket_name
workload.googleapis.com/couchbase.bucket.memory.high_water_mark.limit
GAUGEDOUBLE
gce_instance
bucket_name
workload.googleapis.com/couchbase.bucket.memory.low_water_mark.limit
GAUGEDOUBLE
gce_instance
bucket_name
workload.googleapis.com/couchbase.bucket.memory.usage
GAUGEDOUBLE
gce_instance
bucket_name
workload.googleapis.com/couchbase.bucket.operation.count
CUMULATIVEINT64
gce_instance
bucket_name
op
workload.googleapis.com/couchbase.bucket.vbucket.count
GAUGEDOUBLE
gce_instance
bucket_name
state

Verificar a configuração

Nesta seção, descrevemos como verificar se você configurou corretamente o receptor do Couchbase. Pode levar um ou dois minutos para que o agente de operações comece a coletar telemetria.

Para verificar se os registros do Couchbase estão sendo enviados para o Cloud Logging, faça o seguinte:

  1. No painel de navegação do console do Google Cloud, selecione Logging e, depois, Explorador de registros:

    Acessar o Explorador de registros

  2. Insira a seguinte consulta no editor e clique em Executar consulta:
    resource.type="gce_instance"
    (log_id("couchbase_general") OR log_id("couchbase_http_access") OR log_id("couchbase_goxdcr"))
    

Para verificar se as métricas do Couchbase estão sendo enviadas para o Cloud Monitoring, faça o seguinte:

  1. No painel de navegação do console do Google Cloud, selecione Monitoramento e  Metrics Explorer:

    Acesse o Metrics explorer

  2. Na barra de ferramentas do painel do criador de consultas, selecione o botão  MQL ou  PromQL.
  3. Verifique se MQL está selecionado na opção de ativar/desativar Idioma. A alternância de idiomas está na mesma barra de ferramentas que permite formatar sua consulta.
  4. Insira a seguinte consulta no editor e clique em Executar consulta:
    fetch gce_instance
    | metric 'workload.googleapis.com/couchbase.bucket.memory.usage'
    | every 1m
    

Ver painel

Para visualizar as métricas do Couchbase, é necessário ter um gráfico ou um painel configurado. A integração do Couchbase inclui um ou mais painéis para você. Todos os painéis são instalados automaticamente depois que você configura a integração e o Agente de operações começa a coletar dados de métricas.

Também é possível ver visualizações estáticas de painéis sem instalar a integração.

Para ver um painel instalado, faça o seguinte:

  1. No painel de navegação do console do Google Cloud, selecione Monitoramento e  Painéis:

    Acessar Painéis

  2. Selecione a guia Lista de painéis e escolha a categoria Integrações.
  3. Clique no nome do painel que você quer visualizar.

Se você configurou uma integração, mas o painel não foi instalado, verifique se o agente de operações está em execução. Quando não há dados de métricas para um gráfico no painel, a instalação do painel falha. Depois que o Agente de operações começar a coletar métricas, o painel será instalado para você.

Para acessar uma visualização estática do painel, faça o seguinte:

  1. No painel de navegação do console do Google Cloud, selecione Monitoramento e  Integrações:

    Acessar Integrações

  2. Clique no filtro de plataforma de implantação do Compute Engine.
  3. Localize a entrada do Couchbase e clique em View Details.
  4. Selecione a guia Painéis para uma visualização estática. Se o painel estiver instalado, navegue até ele clicando em Ver painel.

Para mais informações sobre painéis no Cloud Monitoring, consulte Painéis e gráficos.

Para mais informações sobre como usar a página Integrações, consulte Gerenciar integrações.

Instalar políticas de alertas

As políticas de alertas orientam o Cloud Monitoring a notificar você quando ocorrerem condições especificadas. A integração do Couchbase inclui uma ou mais políticas de alertas para você usar. É possível ver e instalar essas políticas de alertas na página Integrações no Monitoring.

Para visualizar e descrever as descrições de políticas de alertas disponíveis, faça o seguinte:

  1. No painel de navegação do console do Google Cloud, selecione Monitoramento e  Integrações:

    Acessar Integrações

  2. Localize a entrada do Couchbase e clique em View Details.
  3. Selecione a guia Alertas. Essa guia apresenta descrições das políticas de alertas disponíveis e mostra uma interface para instalá-las.
  4. Instalar políticas de alertas. As políticas de alertas precisam saber para onde enviar as notificações de que o alerta foi acionado. Portanto, elas exigem informações para instalação. Para instalar políticas de alertas, faça o seguinte:
    1. Na lista de políticas de alertas disponíveis, selecione aquelas que você quer instalar.
    2. Na seção Configurar notificações, selecione um ou mais canais de notificação. Você pode desativar o uso dos canais de notificação, mas, se isso acontecer, as políticas de alertas vão ser disparadas silenciosamente. É possível verificar o status no Monitoring, mas não receber notificações.

      Para saber mais sobre canais de notificação, consulte Gerenciar canais de notificação.

    3. Clique em Criar políticas.

Para mais informações sobre políticas de alertas no Cloud Monitoring, consulte Introdução a alertas.

Para mais informações sobre como usar a página Integrações, consulte Gerenciar integrações.

A seguir

Para ver um tutorial sobre como usar o Ansible para instalar o agente de operações, configurar um aplicativo de terceiros e instalar um painel de amostra, consulte o vídeo Instalação do agente de operações para resolver problemas de aplicativos de terceiros.