Monitorar o Amazon DocumentDB com métricas do CloudWatch - Amazon DocumentDB

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Monitorar o Amazon DocumentDB com métricas do CloudWatch

O Amazon DocumentDB (compatível com MongoDB) se integra ao Amazon CloudWatch para que você possa coletar e analisar métricas operacionais para seus clusters. Você pode monitorar essas métricas usando o console do CloudWatch, o console do Amazon DocumentDB, o AWS Command Line Interface (AWS CLI), ou o CloudWatch API.

O CloudWatch também permite que você defina alarmes para receber notificações se um valor de métrica violar um limite especificado por você. Você também pode configurar o Amazon CloudWatch Events para executar uma ação corretiva caso ocorra uma violação. Para obter mais informações sobre o uso do CloudWatch e dos alarmes, consulte a documentação Amazon CloudWatch.

Métricas do Amazon DocumentDB

Para monitorar a integridade e o desempenho do cluster e das instâncias do Amazon DocumentDB, você pode visualizar as seguintes métricas no console do Amazon DocumentDB.

nota

As métricas nas tabelas a seguir se aplicam tanto a clusters elásticos quanto baseados em instâncias.

Utilização de Recursos
Métrica Descrição
BackupRetentionPeriodStorageUsed A quantidade total de armazenamento de backup em GiB usada para oferecer suporte ao atributo de restauração pontual na janela de retenção do Amazon DocumentDB. Incluído no total relatado pela métrica TotalBackupStorageBilled. Calculado separadamente para cada cluster do Amazon DocumentDB.
ChangeStreamLogSize A quantidade de armazenamento usada pelo cluster para armazenar o log do fluxo de alterações em megabytes. Esse valor é um subconjunto do armazenamento total do cluster (VolumeBytesUsed) e afeta o custo do cluster. Para obter informações sobre preço de armazenamento, consulte a página de produto do Amazon DocumentDB. O tamanho do log do fluxo de alterações dependerá do número de alterações que ocorrerem no cluster e da duração da retenção do log do fluxo de alterações. Para obter mais informações sobre fluxos de alterações, consulte Usar fluxos de mudança com o Amazon DocumentDB.
CPUUtilization A porcentagem de CPU usada por uma instância.
DatabaseConnections O número de conexões abertas em uma instância tomada com uma frequência de um minuto.
DatabaseConnectionsMax O número máximo de conexões de banco de dados abertas em uma instância em um período de um minuto.
DatabaseCursors O número de cursores abertos em uma instância obtida com uma frequência de um minuto.
DatabaseCursorsMax O número máximo de cursores abertos em uma instância em um período de um minuto.
DatabaseCursorsTimedOut O número de cursores que atingiram o tempo limite em um período de um minuto.
FreeableMemory A quantidade de memória de acesso aleatório disponível, em bytes.
FreeLocalStorage

Essa métrica informa a quantidade de armazenamento disponível para cada instância para tabelas temporárias e logs. Esse valor depende da classe da instância. Você pode aumentar a quantidade de espaço de armazenamento gratuito de uma instância escolhendo uma classe de instância maior para ela.

LowMemThrottleQueueDepth

A profundidade da fila para solicitações que são limitadas devido a pouca memória disponível obtida com uma frequência de um minuto.

LowMemThrottleMaxQueueDepth

A profundidade máxima da fila para solicitações que são limitadas devido à pouca memória disponível em um período de um minuto.

LowMemNumOperationsThrottled

O número de solicitações que são limitadas devido à pouca memória disponível em um período de um minuto.

SnapshotStorageUsed A quantidade total de armazenamento de backup em GiB consumida por todos os snapshots de um determinado cluster do Amazon DocumentDB fora da janela de retenção de backup. Incluído no total relatado pela métrica TotalBackupStorageBilled. Calculado separadamente para cada cluster do Amazon DocumentDB.
SwapUsage A quantidade de troca usada na instância.
TotalBackupStorageBilled A quantidade total de armazenamento de backup em GiB para a qual você é cobrado para determinado cluster do Amazon DocumentDB. Inclui o armazenamento de backup medido pelas métricas BackupRetentionPeriodStorageUsed e SnapshotStorageUsed. Calculado separadamente para cada cluster do Amazon DocumentDB.
TransactionsOpen O número de transações abertas em uma instância realizada com uma frequência de um minuto.
TransactionsOpenMax O número máximo de transações abertas em uma instância em um período de um minuto.
VolumeBytesUsed A quantidade de armazenamento usada pelo cluster em bytes. Esse valor afeta o custo do cluster. Para obter informações sobre preço, consulte a página do produto Amazon DocumentDB.
Latência
Métrica Descrição
DBClusterReplicaLagMaximum A quantidade máxima de atraso, em milissegundos, entre a instância principal e cada instância do Amazon DocumentDB no cluster.
DBClusterReplicaLagMinimum A quantidade mínima de atraso, em milissegundos, entre a instância principal e cada instância de réplica no cluster.
DBInstanceReplicaLag O tempo de atraso, em milissegundos, ao replicar atualizações da instância principal para uma instância de réplica.
ReadLatency O tempo médio necessário por operação de E/S de disco.
WriteLatency O tempo médio necessário, em milissegundos, por operação de I/O de disco.
Operações
Métrica Descrição
DocumentsDeleted O número de documentos excluídos em um período de um minuto.
DocumentsInserted O número de documentos inseridos em um período de um minuto.
DocumentsReturned O número de documentos devolvidos em um período de um minuto.
DocumentsUpdated O número de documentos atualizados em um período de um minuto.
OpcountersCommand O número de comandos emitidos em um período de um minuto.
OpcountersDelete O número de operações de exclusão emitidas em um período de um minuto.
OpcountersGetmore O número de getmores emitidos em um período de um minuto.
OpcountersInsert O número de operações de inserção emitidas em um período de um minuto.
OpcountersQuery O número de consultas emitidas em um período de um minuto.
OpcountersUpdate O número de operações de atualização emitidas em um período de um minuto.
TransactionsStarted O número de transações iniciadas em uma instância em um período de um minuto.
TransactionsCommitted O número de transações confirmadas em uma instância em um período de um minuto.
TransactionsAborted O número de transações abortadas em uma instância em um período de um minuto.
TTLDeletedDocuments O número de documentos excluídos por um TTLMonitor em um período de um minuto.
Throughput
Métrica Descrição
NetworkReceiveThroughput A quantidade de throughput de rede, em bytes por segundo, recebida dos clientes por cada instância no cluster. Essa throughput não inclui o tráfego de rede entre instâncias no cluster e o volume do cluster.
NetworkThroughput A quantidade de throughput de rede, em bytes por segundo, recebida e transmitida aos clientes por cada instância no cluster do Amazon DocumentDB. Essa throughput não inclui o tráfego de rede entre instâncias no cluster e o volume do cluster.
NetworkTransmitThroughput A quantidade de throughput de rede, em bytes por segundo, enviada aos clientes por cada instância no cluster. Essa throughput não inclui o tráfego de rede entre instâncias no cluster e o volume do cluster.
ReadIOPS O número médio de operações E/S de leitura de disco por segundo. O Amazon DocumentDB relata as IOPS de leitura e gravação separadamente em intervalos de um minuto.
ReadThroughput O número médio de bytes lidos do disco por segundo.
VolumeReadIOPs

O número médio de operações de E/S de leitura faturadas a partir de um volume de cluster, relatado em intervalos de 5 minutos. As operações de leitura faturadas são calculadas no nível de volume do cluster, agregadas a partir de todas as instâncias no cluster de banco de dados e posteriormente relatadas em intervalos de 5 minutos. O valor é calculado tomando o valor da métrica de operações de leitura em um período de 5 minutos. Você pode determinar a quantidade de operações de leitura faturadas por segundo, tomando o valor da métrica de operações de leitura faturadas e dividindo por 300 segundos.

Por exemplo, se VolumeReadIOPs retorna 13.686, então as operações de leitura cobradas por segundo são 45 (13.686/300 = 45,62).

Você acumula operações de leitura faturadas para consultas que solicitam páginas de banco de dados que não estão presentes no cache do buffer e, portanto, devem ser carregadas a partir do armazenamento. Você pode perceber picos em operações de leitura faturadas, pois os resultados da consulta são lidos a partir do armazenamento e depois são carregados no cache do buffer.

VolumeWriteIOPs

O número médio de operações de E/S de gravação faturadas a partir de um volume de cluster, relatado em intervalos de 5 minutos. As operações de gravação faturadas são calculadas no nível de volume do cluster, agregadas a partir de todas as instâncias no cluster e posteriormente relatadas em intervalos de 5 minutos. O valor é calculado tomando o valor da métrica de operações de leitura em um período de 5 minutos. É possível determinar a quantidade de operações de gravação faturadas por segundo, tomando o valor da métrica de operações de gravação faturadas e dividindo por 300 segundos.

Por exemplo, se VolumeWriteIOPs retorna 13.686, então as operações de leitura cobradas por segundo são 45 (13.686/300 = 45,62).

Observe que VolumeReadIOPs as VolumeWriteIOPs métricas são calculadas pela camada de armazenamento do DocumentDB e incluem o iOS executado pelas instâncias primária e de réplica. Os dados são agregados a cada 20-30 minutos e depois reportados em intervalos de 5 minutos, emitindo assim o mesmo ponto de dados para a métrica no período de tempo. Se você estiver procurando por uma métrica para correlacionar com suas operações de inserção em um intervalo de 1 minuto, você pode usar a métrica WriteIOps em nível de instância. A métrica está disponível na guia de monitoramento da sua instância primária do Amazon DocumentDB.

WriteIOPS O número médio de operações de E/S de gravação de disco por segundo. Quando usados em nível de cluster, WriteIOPs são avaliados em todas as instâncias do cluster. As IOPS de leitura e gravação são relatadas separadamente, em intervalos de um minuto.
WriteThroughput O número médio de bytes gravados no disco por segundo.
Sistema
Métrica Descrição
BufferCacheHitRatio A porcentagem de solicitações atendidas pelo cache de buffer.
DiskQueueDepth o número de solicitações de gravação simultâneas no volume de armazenamento distribuído.
EngineUptime A quantidade de tempo, em segundos, em que a instância está executando.
IndexBufferCacheHitRatio A porcentagem de solicitações de índice atendidas pelo cache de buffer. Você pode ver um aumento maior que 100% na métrica logo após eliminar um índice, uma coleção ou um banco de dados. Isso será corrigido automaticamente após 60 segundos. Essa limitação será corrigida em uma atualização de patch futura.
Métricas de instância T3
Métrica Descrição
CPUCreditUsage O número de créditos de CPU gastos durante o período de medição.
CPUCreditBalance O número de créditos de CPU que uma instância acumulou. Esse saldo é esgotado quando a CPU apresenta expansões e os créditos de CPU são gastos com mais rapidez do que são ganhos.
CPUSurplusCreditBalance O número de créditos de CPU excedentes gastos para sustentar o desempenho da CPU quando o valor CPUCreditBalance é zero.
CPUSurplusCreditsCharged O número de créditos de CPU excedentes que ultrapassam o número máximo de créditos de CPU que podem ser ganhos em um período de 24 horas, resultando em uma cobrança adicional. Para obter mais informações, consulte Monitoring your CPU credits.

Visualizar dados do CloudWatch

Você pode exibir dados do Amazon CloudWatch usando o console do CloudWatch, o console Amazon DocumentDB AWS Command Line Interface (AWS CLI), ou a API do CloudWatch.

Using the AWS Management Console

Para visualizar métricas do CloudWatch usando o Amazon DocumentDB, conclua as etapas a seguir.

  1. Faça login no AWS Management Console e abra o console do Amazon DocumentDB em https://console.aws.amazon.com/docdb.

  2. No painel de navegação, escolha Clusters.

    dica

    Se você não visualizar o painel de navegação à esquerda da tela, selecione o ícone do menu () no canto superior esquerdo da página.

  3. Na caixa de navegação Clusters, você verá a coluna Identificador do Cluster. Suas instâncias estão listadas em clusters, semelhante ao snapshot abaixo.

  4. Na lista de instâncias, escolha o nome da instância para a qual você deseja métricas.

  5. Na página de resumo da instância resultante, escolha a guia Monitoramento para visualizar representações gráficas das métricas da sua instância do Amazon DocumentDB. Como um gráfico deve ser gerado para cada métrica, pode levar alguns minutos para que os gráficos do CloudWatch sejam preenchidos.

    A imagem a seguir mostra as representações gráficas de duas métricas do CloudWatch no console do Amazon DocumentDB, WriteIOPS e ReadIOPS.

    Duas das 18 métricas do CloudWatch no console do Amazon DocumentDB, writeiops e readiops.
Using the CloudWatch Management Console

Para visualizar métricas do CloudWatch usando o CloudWatch Management Console, conclua as etapas a seguir.

  1. Faça login no AWS Management Console e abra o console do Amazon DocumentDB em https://console.aws.amazon.com/cloudwatch.

  2. No painel de navegação, escolha Metrics (Métricas). Em seguida, na lista de nomes de serviços, escolha DocDB.

  3. Escolha uma dimensão de métrica (por exemplo, Cluster Metrics).

  4. A guia Todas as métricas exibe todas as métricas dessa dimensão no DocDB.

    1. Para classificar a tabela, use o cabeçalho da coluna.

    2. Para criar um gráfico de uma métrica, marque a caixa de seleção ao lado da métrica. Para selecionar todas as métricas, marque a caixa de seleção na linha de cabeçalho da tabela.

    3. Para filtrar por métrica, passe o mouse sobre o nome da métrica e selecione a seta suspensa ao lado do nome da métrica. Em seguida, escolha Adicionar para pesquisar, conforme mostrado na imagem abaixo.

      Filtre uma métrica passando o mouse sobre a métrica e selecionando “Adicionar à pesquisa”.
Using the AWS CLI

Para visualizar dados do CloudWatch para o Amazon DocumentDB, use a operação do get-metric-statistics CloudWatch com os seguintes parâmetros.

Parâmetros
  • --namespace: obrigatório. O namespace de serviço cujas métricas do CloudWatch você deseja ver. Para o Amazon DocumentDB, isso deve ser. AWS/DocDB

  • --metric-name: obrigatório. O nome da métrica cujos dados você deseja dados.

  • --start-time: obrigatório. O timestamp que determina o primeiro ponto de dados a ser retornado.

    O valor especificado é inclusivo; os resultados incluem pontos de dados com o timestamp especificado. O timestamp deve estar no formato ISO 8601 UTC (por exemplo, 2016-10-03T23:00:00Z).

  • --end-time: obrigatório. O timestamp que determina o último ponto de dados a ser retornado.

    O valor especificado é inclusivo; os resultados incluem pontos de dados com o timestamp especificado. O timestamp deve estar no formato ISO 8601 UTC (por exemplo, 2016-10-03T23:00:00Z).

  • --period: obrigatório. A granularidade, em segundos, dos pontos de dados retornados. Para métricas com resolução regular, um período pode ser tão curto quanto um minuto (60 segundos) e deve ser um múltiplo de 60. Para métricas de alta resolução coletadas em intervalos menores que um minuto, o período pode ser 1, 5, 10, 30, 60 ou qualquer múltiplo de 60.

  • --dimensions — Opcional. Se a métrica contiver várias dimensões, você deverá incluir um valor para cada dimensão. O CloudWatch trata cada combinação exclusiva de dimensões como uma métrica separada. Se uma combinação específica de dimensões não foi publicada, você não poderá recuperar estatísticas para ela. Você deve especificar as mesmas dimensões usadas ao criar as métricas.

  • --statistics — Opcional. As estatísticas da métrica, além do percentil. Para estatísticas de percentil, use ExtendedStatistics. Ao chamar GetMetricStatistics, você deve especificar Statistics ou ExtendedStatistics, mas não ambos.

    Valores permitidos:
    • SampleCount

    • Average

    • Sum

    • Minimum

    • Maximum

  • --extended-statistics — Opcional. As estatísticas de percentile. Especifique os valores entre p0.0 e p100. Ao chamar GetMetricStatistics, você deve especificar Statistics ou ExtendedStatistics, mas não ambos.

  • --unit — Opcional. A unidade para uma determinada métrica. As métricas podem ser relatadas em várias unidades. Não fornecer uma unidade resulta em todas as unidades sendo retornadas. Se você especificar apenas uma unidade que a métrica não reporta, os resultados da chamada serão nulos.

    Possíveis valores:
    • Seconds

    • Microseconds

    • Milliseconds

    • Bytes

    • Kilobytes

    • Megabytes

    • Gigabytes

    • Terabytes

    • Bits

    • Kilobytes

    • Megabits

    • Gigabits

    • Terabits

    • Percent

    • Count

    • Bytes/Second

    • Kilobytes/Second

    • Megabytes/Second

    • Gigabytes/Second

    • Terabytes/Second

    • Bits/Second

    • Kilobits/Second

    • Megabits/Second

    • Gigabits/Second

    • Terabits/Second

    • Count/Second

    • None

O exemplo a seguir localiza o CPUUtilization máximo para um período de 2 horas, tirando uma amostra a cada 60 segundos.

Para Linux, macOS ou Unix:

aws cloudwatch get-metric-statistics \ --namespace AWS/DocDB \ --dimensions \ Name=DBInstanceIdentifier,Value=docdb-2019-01-09-23-55-38 \ --metric-name CPUUtilization \ --start-time 2019-02-11T05:00:00Z \ --end-time 2019-02-11T07:00:00Z \ --period 60 \ --statistics Maximum

Para Windows:

aws cloudwatch get-metric-statistics ^ --namespace AWS/DocDB ^ --dimensions ^ Name=DBInstanceIdentifier,Value=docdb-2019-01-09-23-55-38 ^ --metric-name CPUUtilization ^ --start-time 2019-02-11T05:00:00Z ^ --end-time 2019-02-11T07:00:00Z ^ --period 60 ^ --statistics Maximum

A saída dessa operação é semelhante à seguinte.

{ "Label": "CPUUtilization", "Datapoints": [ { "Unit": "Percent", "Maximum": 4.49152542374361, "Timestamp": "2019-02-11T05:51:00Z" }, { "Unit": "Percent", "Maximum": 4.25000000000485, "Timestamp": "2019-02-11T06:44:00Z" }, ********* some output omitted for brevity ********* { "Unit": "Percent", "Maximum": 4.33333333331878, "Timestamp": "2019-02-11T06:07:00Z" } ] }

Dimensões do Amazon DocumentDB

As métricas para o Amazon DocumentDB são qualificadas de acordo com os valores de conta ou operação. Você pode usar o console do CloudWatch para recuperar dados do Amazon DocumentDB filtrados por qualquer uma das dimensões da tabela a seguir.

Dimensão Descrição
DBClusterIdentifier Filtra os dados solicitados para um cluster específico do Amazon DocumentDB.
DBClusterIdentifier, Role Filtra os dados solicitados por você para um cluster específico do Amazon DocumentDB, agregando a métrica por função de instância (WRITER/READER). Por exemplo, você pode agregar métricas para todas as instâncias de READER que pertençam a um cluster.
DBInstanceIdentifier Filtra os dados solicitados para uma instância de banco de dados específica.

Métricas de monitoramento

Métricas do Opcounter têm um valor diferente de zero (geralmente ~ 50) para clusters ociosos. Isso ocorre porque o Amazon DocumentDB realiza verificações de saúde periódicas, operações internas e tarefas de coleta de métricas.

Monitorar conexões de banco de dados

Ao visualizar o número de conexões usando comandos do mecanismo de banco de dados, como db.runCommand( { serverStatus: 1 }), você poderá ver até 10 conexões a mais do que vê em DatabaseConnections por meio do CloudWatch. Isso ocorre porque o Amazon DocumentDB realiza verificações de integridade periódicas e tarefas de coleta de métricas que não são contabilizadas no DatabaseConnections. DatabaseConnections representa apenas conexões iniciadas pelo cliente.