Ver métricas

Neste tópico, explicamos como visualizar as métricas híbridas da Apigee em um painel do Stackdriver.

Sobre o Stackdriver

Para mais informações sobre métricas, painéis e Stackdriver, consulte:

Como ativar métricas híbridas

Antes de enviar métricas híbridas ao Stackdriver, ative a coleta de métricas. Consulte Configurar coleta de métricas para este procedimento.

Sobre rótulos e nomes de métricas híbridas

Quando ativado, o híbrido preenche automaticamente as métricas do Stackdriver. O prefixo do nome de domínio das métricas criadas por híbrido é:

apigee.googleapis.com/

Por exemplo, a métrica /proxy/request_count contém o número total de solicitações recebidas por um proxy de API. Portanto, o nome da métrica no Stackdriver é:

apigee.googleapis.com/proxy/request_count

O Stackdriver permite filtrar e agrupar dados de métricas com base em rótulos. Alguns rótulos são predefinidos e outros são explicitamente adicionados por nuvem híbrida. A seção Métricas disponíveis abaixo lista todas as métricas híbridas disponíveis e todos os rótulos adicionados especificamente a uma métrica que pode ser usada para filtragem e agrupamento.

Como ver métricas

Veja no exemplo a seguir como visualizar métricas no Stackdriver:
  1. Abra o Metrics Explorer do Monitoring em um navegador. Como alternativa, se você já estiver no console do Stackdriver, selecione Metrics Explorer.
  2. Em Encontrar tipo de recurso e métrica, localize e selecione a métrica que você quer examinar. Escolha uma métrica específica listada em Métricas disponíveis ou pesquise uma métrica. Por exemplo, pesquise proxy/latencies:

    Inserir métrica

  3. Selecione a métrica pretendida.
  4. Aplique filtros. As opções de filtro para cada métrica estão listadas em Métricas disponíveis. Por exemplo, para a métrica proxy_latencies, as opções de filtro são: org=org_name.
  5. O Stackdriver exibe o gráfico para a métrica selecionada.
  6. Clique em Salvar.

Como criar um painel

Os painéis são uma maneira de visualizar e analisar dados de métricas que são importantes para você. O Stackdriver fornece painéis predefinidos para os recursos e serviços que você usa, além de criar painéis personalizados.

Use um gráfico para exibir uma métrica da Apigee no seu painel personalizado. Com os painéis personalizados, você tem controle total sobre os gráficos exibidos e as configurações. Para mais informações sobre a criação de gráficos, consulte esta página.

Veja no exemplo a seguir como criar um painel no Stackdriver e, em seguida, adicionar gráficos para visualizar dados de métricas:

  1. Abra o Metrics Explorer do Monitoring em um navegador e selecione Painéis.
  2. Selecione + Criar painel.
  3. Dê um nome ao painel. Por exemplo: Tráfego de solicitação de proxy híbrido.
  4. Clique em Confirmar.
  5. Para cada gráfico que quiser adicionar ao seu painel, siga estes passos:

    1. No painel, selecione Adicionar gráfico.
    2. Selecione a métrica pretendida conforme descrito acima em Como visualizar métricas.
    3. Preencha a caixa de diálogo para definir seu gráfico.
    4. Clique em Salvar. O Stackdriver exibe dados da métrica selecionada.

Métricas disponíveis

As tabelas a seguir listam as métricas para analisar o tráfego de proxy.

Métricas de tráfego de servidor, destino e proxy

O serviço Prometheus coleta e processa métricas (conforme descrito em Coleta de métricas) para tráfego de servidor proxy e destino.

Na tabela a seguir, descrevemos as métricas e rótulos que o Prometheus usa. Esses rótulos são usados nas entradas do registro de métricas.

Nome da métrica Rótulo Usar
/proxy/request_count method O número total de solicitações de proxy de API recebidas.
/proxy/response_count method response_code O número total de respostas de proxy da API recebidas.
/proxy/latencies method Número total de milissegundos para responder a uma chamada. Esse horário inclui a sobrecarga do proxy da API Apigee e o horário do servidor de destino.
/target/request_count method

target_type

target_endpoint

O número total de solicitações enviadas ao destino do proxy.
/target/response_count method

response_code

target_type

target_endpoint

O número total de respostas recebidas do destino do proxy.
/target/latencies method

response_code

target_type

target_endpoint

Número total de milissegundos para responder a uma chamada. Esse tempo não inclui a sobrecarga de proxy da API Apigee.
/policy/latencies policy_name O número total de milissegundos que a política nomeada levou para ser executada.
/server/fault_count source

O número total de falhas do aplicativo do servidor.

Por exemplo, o aplicativo pode ser apigee-runtime, apigee-synchronizer ou apigee-udca. Use o rótulo pod_name para filtrar os resultados por aplicativo.

/server/nio state O número de soquetes abertos.
/server/num_threads O número de linhas de execução não daemon ativas no servidor.
/server/request_count method

type

O número total de solicitações recebidas pelo aplicativo do servidor.

Por exemplo, o aplicativo pode ser apigee-runtime, apigee-synchronizer ou apigee-udca. Use o rótulo pod_name para filtrar os resultados por aplicativo.

/server/response_count method

response_code
type

Número total de respostas enviadas pelo aplicativo do servidor.

Por exemplo, o aplicativo pode ser apigee-runtime, apigee-synchronizer ou apigee-udca. Use o rótulo pod_name para filtrar os resultados por aplicativo.

/server/latencies method

response_code
type

Latência é a latência em milésimos de segundo introduzida pelo aplicativo do servidor.

Por exemplo, o aplicativo pode ser apigee-runtime, apigee-synchronizer ou apigee-udca. Use o rótulo pod_name para filtrar os resultados por aplicativo.

/upstream/request_count method

type

O número de solicitações enviadas pelo aplicativo do servidor para o aplicativo upstream.

Por exemplo, para apigee-synchronizer, o plano de controle é upstream. Portanto, upstream/request_count para apigee-synchronizer é uma métrica que indica as solicitações que apigee-synchronizer fez para o plano de controle.

/upstream/response_count method

response_code

type

O número de respostas recebidas pelo aplicativo do servidor a partir do aplicativo upstream.

Por exemplo, para apigee-synchronizer, o plano de controle é upstream. Portanto, upstream/response_count para apigee-synchronizer é uma métrica que indica as solicitações que apigee-synchronizer recebeu do plano de controle.

/upstream/latencies method

response_code
type

A latência incorrida no aplicativo do servidor upstream em milissegundos.

Por exemplo, para o apigee-synchronizer, o plano de controle é upstream. Portanto, upstream/latencies para apigee-synchronizer é uma métrica que indica a latência do plano de controle.

Métricas de UDCA

O serviço Prometheus coleta e processa métricas, conforme descrito na coleção de métricas, para o serviço UDCA do mesmo modo que outros serviços híbridos.

Veja na tabela a seguir as métricas e os rótulos que o Prometheus usa nos dados de métricas da UDCA. Esses rótulos são usados nas entradas do registro de métricas.

Nome da métrica Rótulo Usar
/udca/server/local_file_oldest_ts dataset

state

O carimbo de data/hora, em milissegundos desde o início da era Unix, para o arquivo mais antigo no conjunto de dados.

Ela é calculada a cada 60 segundos e não reflete o estado em tempo real. Se a UDCA estiver atualizada e não houver arquivos aguardando o upload quando essa métrica for calculada, esse valor será 0.

Se esse valor continuar aumentando, os arquivos antigos ainda estarão no disco.

/udca/server/local_file_latest_ts dataset

state

O carimbo de data/hora, em milissegundos desde o início da Era Unix, para o arquivo mais recente no disco por estado.

Ela é calculada a cada 60 segundos e não reflete o estado em tempo real. Se a UDCA estiver atualizada e não houver arquivos aguardando o upload quando essa métrica for calculada, esse valor será 0.

/udca/server/local_file_count dataset

state

Uma contagem do número de arquivos em disco no pod de coleta de dados.

O ideal é que o valor seja próximo de 0. Um valor alto consistente indica que os arquivos não estão sendo enviados ou que a UDCA não consegue fazer upload rápido o suficiente.

Esse valor é calculado a cada 60 segundos e não reflete o estado da UDCA em tempo real.

/udca/server/total_latencies dataset

O intervalo de tempo, em segundos, entre o arquivo de dados que está sendo criado e o arquivo de dados que está sendo enviado com sucesso.

Os buckets serão 100 ms, 250 ms, 500 ms, 1s, 2s, 4s, 8s, 16s, 32s e 64s.

Histograma para latência total desde a hora de criação do arquivo até o momento do upload.

/udca/server/upload_latencies dataset

O tempo total, em segundos, que a UDCA gastou fazendo o upload de um arquivo de dados.

Os buckets serão 100 ms, 250 ms, 500 ms, 1s, 2s, 4s, 8s, 16s, 32s e 64s.

As métricas exibirão um histograma para a latência total de upload, incluindo todas as chamadas upstream.

/udca/upstream/http_error_count service

dataset

response_code

A contagem total de erros HTTP encontrados pela UDCA. Essa métrica é útil para determinar qual parte das dependências externas da UDCA está falhando e por que motivo.

Esses erros podem surgir para vários serviços (getDataLocation, Cloud storage, Token generator) e para vários conjuntos de dados (como api e trace) com vários códigos de resposta.

/udca/upstream/http_latencies service

dataset

A latência upstream dos serviços, em segundos.

Os buckets serão 100 ms, 250 ms, 500 ms, 1s, 2s, 4s, 8s, 16s, 32s e 64s.

Histograma para latência de serviços upstream.

/udca/upstream/uploaded_file_sizes dataset

O tamanho do arquivo que está sendo enviado para os serviços da Apigee, em bytes.

Os buckets serão de 1 KB, 10 KB, 100 KB, 1 MB, 10 MB, 100 MB e 1 GB.

Histograma para tamanho de arquivo por conjunto de dados, organização e ambiente.

/udca/upstream/uploaded_file_count dataset Uma contagem dos arquivos enviados pela UDCA para os serviços da Apigee.

Observações:

  • O valor do conjunto de dados event precisa continuar crescendo.
  • O valor do conjunto de dados api continuará em expansão se a organização/ambiente tiver tráfego constante.
  • O valor do conjunto de dados trace aumenta quando você usa as ferramentas de rastreamento da Apigee para depurar ou inspecionar suas solicitações.
/udca/disk/used_bytes dataset

state

O espaço ocupado pelos arquivos de dados no disco do pod de coleta de dados, em bytes.

Um aumento nesse valor ao longo do tempo:

  • ready_to_upload implica que o agente está atrasando.
  • failed implica que os arquivos estão reservando no disco e não estão sendo enviados. Esse valor é calculado a cada 60 segundos.
/udca/server/pruned_file_count dataset

state

Contagem de arquivos que foram excluídos porque o tempo de vida útil (TTL, na sigla em inglês) estava além do limite definido. O conjunto de dados pode incluir API, trace e outros, e o estado pode ser UPLOADED, FAILED ou DISCARDED.
/udca/server/retry_cache_size dataset

Uma contagem do número de arquivos, por conjunto de dados, que a UDCA está tentando enviar.

Depois de três tentativas para cada arquivo, a UDCA move o arquivo para o subdiretório /failed e o remove deste cache. Um aumento nesse valor ao longo do tempo indica que o cache não está sendo limpo, o que acontece quando os arquivos são movidos para o subdiretório /failed após três novas tentativas.

Métricas do Cassandra

O serviço Prometheus coleta e processa métricas (conforme descrito em Coleta de métricas) para o Cassandra, assim como faz com outros serviços híbridos.

A tabela a seguir descreve as métricas e os rótulos que o Prometheus usa nos dados de métricas do Cassandra. Esses rótulos são usados nas entradas do registro de métricas.

Nome da métrica (excluindo o domínio) Rótulo Usar
/cassandra/process_max_fds Número máximo de descritores de arquivos abertos.
/cassandra/process_open_fds Abra os descritores de arquivos.
/cassandra/jvm_memory_pool_bytes_max pool Uso máximo de memória do JVM para o pool.
/cassandra/jvm_memory_pool_bytes_init pol Uso inicial de memória da JVM para o pool.
/cassandra/jvm_memory_bytes_max area Uso máximo de memória de heap do JVM.
/cassandra/process_cpu_seconds_total Tempo de CPU do usuário e do sistema gasto em segundos.
/cassandra/jvm_memory_bytes_used area Uso de memória de heap do JVM
/cassandra/compaction_pendingtasks unit Compactação pendente para sstables do Cassandra. Consulte Compactação para saber mais.
/cassandra/jvm_memory_bytes_init area Uso de memória inicial de heap da JVM.
/cassandra/jvm_memory_pool_bytes_used pool Uso de memória do pool JVM.
/cassandra/jvm_memory_pool_bytes_committed pool Uso de memória confirmada do pool JVM.
/cassandra/clientrequest_latency scope

unit

Latência da solicitação de leitura no intervalo de 75º percentil em microssegundos.
/cassandra/jvm_memory_bytes_committed area Uso de memória comprometida de heap do JVM.