Couchbase

A integração do Couchbase recolhe métricas de contentores, como operações, utilização de memória e rejeições. A integração recolhe métricas do servidor Prometheus exposto num nó. A integração também recolhe registos gerais, de acesso HTTP e entre centros de dados ("goxdcr") do Couchbase.

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

Pré-requisitos

Para recolher telemetria do Couchbase, tem de instalar o agente de operações:

  • Para métricas, instale a versão 2.18.2 ou superior.
  • Para registos, instale a versão 2.18.2 ou superior.

Esta integração suporta as versões 6.5, 6.6 e 7.0 do Couchbase.

Configure o agente de operações para o Couchbase

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

Exemplo de configuração

Os seguintes comandos criam a configuração para recolher e carregar telemetria para o Couchbase:

# Configures Ops Agent to collect telemetry from the app. You must restart the agent for the configuration to take effect.

set -e

# Check if the file exists
if [ ! -f /etc/google-cloud-ops-agent/config.yaml ]; then
  # Create the file if it doesn't exist.
  sudo mkdir -p /etc/google-cloud-ops-agent
  sudo touch /etc/google-cloud-ops-agent/config.yaml
fi

# 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 
      # To use the googlesecretmanager provider to replace plaintext passwords, refer to the example below.
      # password: ${googlesecretmanager:projects/<project-id>/secrets/<secret-id>/versions/<version-id>}
      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

Para que estas alterações entrem em vigor, tem de reiniciar o agente de operações:

Linux

  1. Para reiniciar o agente, execute o seguinte comando na sua instância:
    sudo systemctl restart google-cloud-ops-agent
    
  2. Para confirmar que o agente foi reiniciado, execute o seguinte comando e verifique se os componentes "Agente de métricas" e "Agente de registo" foram iniciados:
    sudo systemctl status "google-cloud-ops-agent*"
    

Windows

  1. Estabeleça ligação à sua instância através do RDP ou de uma ferramenta semelhante e inicie sessão no Windows.
  2. Abra um terminal do PowerShell com privilégios de administrador: clique com o botão direito do rato no ícone do PowerShell e selecione Executar como administrador
  3. Para reiniciar o agente, execute o seguinte comando do PowerShell:
    Restart-Service google-cloud-ops-agent -Force
    
  4. Para confirmar que o agente foi reiniciado, execute o seguinte comando e verifique se os componentes "Agente de métricas" e "Agente de registo" foram iniciados:
    Get-Service google-cloud-ops-agent*
    

O que é registado

O logName é derivado dos IDs dos recetores especificados na configuração. Os campos detalhados no interior de LogEntry são os seguintes.

Os registos couchbase_general contêm os seguintes campos em LogEntry:

Campo Tipo Descrição
jsonPayload.level de string Gravidade da entrada no registo para o registo do Couchbase
jsonPayload.message de string Mensagem de registo
jsonPayload.module_name de string O nome do módulo que emite a entrada
jsonPayload.node_name de string O nome do nó que emite a mensagem de registo
jsonPayload.source de string Origem do registo
jsonPayload.type de string O tipo de registo
severity string (LogSeverity) Nível de entrada de registo (traduzido).

Os registos couchbase_http_access contêm os seguintes campos em LogEntry:

Campo Tipo Descrição
httpRequest objeto Consulte HttpRequest
jsonPayload.host de string O endereço IP do cliente que invoca o pedido HTTP
jsonPayload.level de string Gravidade da entrada no registo para o registo do Couchbase
jsonPayload.message de string Mensagem de registo
jsonPayload.user de string O nome do utilizador que faz o pedido HTTP se for usada a autenticação básica.
severity string (LogSeverity) Nível de entrada de registo (traduzido).

Os registos couchbase_goxdcr contêm os seguintes campos em LogEntry:

Campo Tipo Descrição
jsonPayload.level de string Gravidade da entrada no registo para o registo do Couchbase
jsonPayload.log_type de string O nome do componente que está a emitir o registo entre centros de dados
jsonPayload.message de string Mensagem de registo
severity string (LogSeverity) Nível de entrada de registo (traduzido).

Configure a recolha de métricas

Para carregar métricas do Couchbase, tem de criar um recetor para as métricas produzidas pelo Couchbase e, em seguida, criar um pipeline para o novo recetor.

Este recetor não suporta a utilização de várias instâncias na configuração, por exemplo, para monitorizar vários pontos finais. Todas essas instâncias escrevem na mesma série cronológica e o Cloud Monitoring não tem forma de as distinguir.

Para configurar um destinatário para as suas métricas couchbase, especifique os seguintes campos:

Campo Predefinição Descrição
collection_interval 60s Um valor time.Duration, como 30s ou 5m.
endpoint localhost:8091 O URL do nó a monitorizar.
password A palavra-passe usada para estabelecer ligação ao servidor Couchbase.
type Este valor tem de ser couchbase.
username O nome de utilizador usado para estabelecer ligação ao servidor Couchbase.

O que é monitorizado

A tabela seguinte apresenta a lista de métricas que o agente de operações recolhe da instância do Couchbase.

Tipo de métrica
Tipo, Tipo
Recursos monitorizados
Etiquetas
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

Valide a configuração

Esta secção descreve como verificar se configurou corretamente o recetor do Couchbase. O agente de operações pode demorar um ou dois minutos a começar a recolher telemetria.

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

  1. Na Google Cloud consola, aceda à página Explorador de registos:

    Aceda ao Explorador de registos

    Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cuja legenda é Registo.

  2. Introduza a seguinte consulta no editor e, de seguida, 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 a ser enviadas para o Cloud Monitoring, faça o seguinte:

  1. Na Google Cloud consola, aceda à página  Explorador de métricas:

    Aceda ao Metrics Explorer

    Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cujo subtítulo é Monitorização.

  2. Na barra de ferramentas do painel do criador de consultas, selecione o botão cujo nome é  MQL ou  PromQL.
  3. Verifique se a opção PromQL está selecionada no botão Idioma. O botão para alternar o idioma encontra-se na mesma barra de ferramentas que lhe permite formatar a consulta.
  4. Introduza a seguinte consulta no editor e, de seguida, clique em Executar consulta:
    {"workload.googleapis.com/couchbase.bucket.memory.usage", monitored_resource="gce_instance"}
    

Ver o painel de controlo

Para ver as métricas do Couchbase, tem de ter um gráfico ou um painel de controlo configurado. A integração do Couchbase inclui um ou mais painéis de controlo para si. Todos os painéis de controlo são instalados automaticamente depois de configurar a integração e o agente de operações começar a recolher dados de métricas.

Também pode ver pré-visualizações estáticas de painéis de controlo sem instalar a integração.

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

  1. Na Google Cloud consola, aceda à página  Painéis de controlo:

    Aceda a Painéis de controlo

    Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cujo subtítulo é Monitorização.

  2. Selecione o separador Lista de painéis de controlo e, de seguida, escolha a categoria Integrações.
  3. Clique no nome do painel de controlo que quer ver.

Se configurou uma integração, mas o painel de controlo não foi instalado, verifique se o agente de operações está em execução. Quando não existem dados de métricas para um gráfico no painel de controlo, a instalação do painel de controlo falha. Depois de o agente de operações começar a recolher métricas, o painel de controlo é instalado para si.

Para ver uma pré-visualização estática do painel de controlo, faça o seguinte:

  1. Na Google Cloud consola, aceda à página  Integrações:

    Aceda a Integrações

    Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cujo subtítulo é Monitorização.

  2. Clique no filtro da plataforma de implementação Compute Engine.
  3. Localize a entrada para Couchbase e clique em Ver detalhes.
  4. Selecione o separador Painéis de controlo para ver uma pré-visualização estática. Se o painel de controlo estiver instalado, pode navegar até ele clicando em Ver painel de controlo.

Para mais informações acerca dos painéis de controlo no Cloud Monitoring, consulte o artigo Painéis de controlo e gráficos.

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

Instale políticas de alerta

As políticas de alerta indicam ao Cloud Monitoring que lhe envie uma notificação quando ocorrerem condições especificadas. A integração do Couchbase inclui uma ou mais políticas de alerta para sua utilização. Pode ver e instalar estas políticas de alerta na página Integrações em Monitorização.

Para ver as descrições das políticas de alerta disponíveis e instalá-las, faça o seguinte:

  1. Na Google Cloud consola, aceda à página  Integrações:

    Aceda a Integrações

    Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cujo subtítulo é Monitorização.

  2. Localize a entrada para Couchbase e clique em Ver detalhes.
  3. Selecione o separador Alertas. Este separador apresenta descrições das políticas de alerta disponíveis e uma interface para as instalar.
  4. Instale políticas de alerta. As políticas de alerta precisam de saber para onde enviar notificações de que o alerta foi acionado, pelo que requerem informações suas para a instalação. Para instalar políticas de alerta, faça o seguinte:
    1. Na lista de políticas de alerta disponíveis, selecione as que quer instalar.
    2. Na secção Configurar notificações, selecione um ou mais canais de notificação. Tem a opção de desativar a utilização de canais de notificação, mas, se o fizer, as suas políticas de alerta são acionadas silenciosamente. Pode verificar o respetivo estado em Monitorização, mas não recebe notificações.

      Para mais informações sobre os canais de notificação, consulte o artigo Faça a gestão dos canais de notificação.

    3. Clique em Criar políticas.

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

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

O que se segue?

Para ver um passo a passo sobre como usar o Ansible para instalar o agente de operações, configurar uma aplicação de terceiros e instalar um painel de controlo de exemplo, consulte o vídeo Instale o agente de operações para resolver problemas de aplicações de terceiros.