Monitoramento do Amazon DocumentDB sem servidor - 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á.

Monitoramento do Amazon DocumentDB sem servidor

Para saber mais sobre monitoramento no Amazon DocumentDB, consulte. Monitoramento do Amazon DocumentDB

Sem memória: status de parâmetros incompatíveis

Se uma de suas instâncias sem servidor atingir consistentemente o limite de sua capacidade máxima, o Amazon DocumentDB indicará essa condição definindo a instância para um status de parâmetros incompatíveis. Para obter mais informações, consulte Evitando out-of-memory erros.

CloudWatch Métricas da Amazon para DocumentDB sem servidor

Para saber mais sobre como usar CloudWatch com o Amazon DocumentDB, consulte. Monitorando o Amazon DocumentDB com CloudWatch

Você pode visualizar suas instâncias sem servidor CloudWatch para monitorar a capacidade consumida por cada instância com a ServerlessDatabaseCapacity métrica. Você também pode monitorar todas as CloudWatch métricas padrão do DocumentDB, como consultas DatabaseConnections e consultas. Para obter a lista completa de CloudWatch métricas que você pode monitorar para o Amazon DocumentDB, consulte. Monitorando o Amazon DocumentDB com CloudWatch É importante monitorar as seguintes métricas em CloudWatch nível de instância para que você entenda como suas instâncias sem servidor do DocumentDB estão aumentando e diminuindo. Todas essas métricas são calculadas a cada segundo. Dessa forma, você pode monitorar o status atual de suas instâncias sem servidor. Você pode definir alarmes para notificá-lo se alguma instância sem servidor se aproximar de um limite para métricas relacionadas à capacidade. Você pode determinar se as configurações de capacidade mínima e máxima são apropriadas ou se você precisa ajustá-las. É possível determinar onde concentrar seus esforços para otimizar a eficiência de seu banco de dados.

  • ServerlessDatabaseCapacity— Como uma métrica em nível de instância, ela relata o número DCUs representado pela capacidade atual da instância. Como uma métrica em nível de cluster, ela representa a média dos ServerlessDatabaseCapacity valores de todas as instâncias sem servidor do DocumentDB no cluster.

  • DCUUtilization.— Essa métrica é nova no DocumentDB serverless. Esse valor é representado como uma porcentagem. É calculado como o valor da ServerlessDatabaseCapacity métrica dividido pelo valor máximo de DCU do cluster. Considere as seguintes diretrizes para interpretar essa métrica e agir:

    • Se essa métrica se aproximar de um valor de100.0, a instância aumentou o máximo possível. Considere aumentar a configuração máxima de DCU para o cluster. Dessa forma, as instâncias do gravador e do leitor podem ser escaladas para uma capacidade maior.

    • Suponha que uma carga de trabalho somente para leitura faça com que uma instância do leitor se aproxime DCUUtilization de um of100.0, enquanto a instância do gravador não está perto de sua capacidade máxima. Nesse caso, considere adicionar outras instâncias de leitura ao cluster. Dessa forma, você pode distribuir a parte somente para leitura da carga de trabalho em mais instâncias, reduzindo a carga em cada instância do leitor.

    • Suponha que você esteja executando uma aplicação de produção, em que a performance e a escalabilidade sejam as principais considerações. Nesse caso, você pode definir o valor máximo de DCU para o cluster como um número alto. Sua meta é que a DCUUtilization métrica esteja sempre abaixo de 100,0. Com um alto valor máximo de DCU, você pode ter certeza de que há espaço suficiente caso ocorram picos inesperados na atividade do banco de dados. Você só será cobrado pela capacidade do banco de dados que for realmente consumida.

  • CPUUtilization— Essa métrica é interpretada de forma diferente no DocumentDB serverless e nas instâncias provisionadas. Para o DocumentDB serverless, esse valor é uma porcentagem calculada como a quantidade de CPU usada atualmente, dividida pela capacidade da CPU que está disponível abaixo do valor máximo de DCU do cluster. O Amazon DocumentDB monitora esse valor automaticamente e aumenta sua instância sem servidor quando a instância usa consistentemente uma alta proporção de sua capacidade de CPU.

    Se essa métrica se aproximar de um valor de100.0, a instância atingiu sua capacidade máxima de CPU. Considere aumentar a configuração máxima de DCU para o cluster. Se essa métrica se aproximar de um valor de 100.0 em uma instância de leitor, considere adicionar outras instâncias de leitura ao cluster. Dessa forma, você pode distribuir a parte somente para leitura da carga de trabalho em mais instâncias, reduzindo a carga em cada instância do leitor.

  • FreeableMemory— Esse valor representa a quantidade de memória não utilizada que está disponível quando a instância sem servidor do DocumentDB é escalada até sua capacidade máxima. Para cada DCU em que a capacidade atual está abaixo da capacidade máxima, esse valor aumenta em aproximadamente 2 GiB. Portanto, essa métrica não se aproxima de zero até que a instância seja ampliada o máximo possível.

    Se essa métrica se aproximar do valor zero, a instância aumentou o máximo possível e está se aproximando do limite de sua memória disponível. Considere aumentar a configuração máxima de DCU para o cluster. Se essa métrica se aproximar do valor zero em uma instância de leitura, considere adicionar outras instâncias de leitura ao cluster. Dessa forma, a parte somente para leitura da carga de trabalho pode ser distribuída em mais instâncias, reduzindo o uso de memória em cada instância do leitor.

  • TempStorageIops— O número de IOPS feitas no armazenamento local conectado à instância. Ele inclui as IOPS para leituras e gravações. Essa métrica representa uma contagem e é medida uma vez por segundo. Essa é uma nova métrica para o DocumentDB serverless. Para obter detalhes, consulte Monitorando o Amazon DocumentDB com CloudWatch.

  • TempStorageThroughput— A quantidade de dados transferidos de e para o armazenamento local associado à instância. Essa métrica é apresentada em bytes e é medida uma vez por segundo. Essa é uma nova métrica para o DocumentDB serverless. Para obter detalhes, consulte Monitorando o Amazon DocumentDB com CloudWatch.

Normalmente, a maior parte da escalabilidade das instâncias sem servidor do DocumentDB é causada pelo uso da memória e pela atividade da CPU. As TempStorageThroughput métricas TempStorageIops e podem ajudar você a diagnosticar os raros casos em que a atividade de rede para transferências entre sua instância e dispositivos de armazenamento local é responsável por aumentos inesperados de capacidade. Para monitorar outras atividades de rede, você pode usar estas métricas existentes:

  • NetworkReceiveThroughput

  • NetworkThroughput

  • NetworkTransmitThroughput

  • StorageNetworkReceiveThroughput

  • StorageNetworkThroughput

  • StorageNetworkTransmitThroughput

Como as CloudWatch métricas sem servidor do DocumentDB se aplicam à sua fatura AWS

As cobranças sem servidor do DocumentDB em sua AWS fatura são calculadas com base na mesma ServerlessDatabaseCapacity métrica que você pode monitorar. O mecanismo de cobrança pode diferir da CloudWatch média computada dessa métrica nos casos em que você usa a capacidade sem servidor do DocumentDB por apenas parte de uma hora. Também pode ser diferente se problemas no sistema tornarem a CloudWatch métrica indisponível por breves períodos. Portanto, você pode ver um valor ligeiramente diferente de horas de DCU em sua fatura do que se você mesmo computasse o número a partir do valor médio. ServerlessDatabaseCapacity

Exemplos de comandos da Amazon CloudWatch CLI para métricas sem servidor do DocumentDB

Os AWS CLI exemplos a seguir demonstram como você pode monitorar as CloudWatch métricas mais importantes relacionadas ao DocumentDB serverless. Em cada caso, substitua a Value= string do --dimensions parâmetro pelo identificador da sua própria instância sem servidor do DocumentDB.

O exemplo de Linux a seguir exibe os valores de capacidade mínima, máxima e média de uma instância, medidos a cada 10 minutos durante uma hora. Os comandos de data do Linux especificam os horários de início e término em relação à data e hora atuais. A função sort_by no parâmetro --query classifica os resultados cronologicamente com base no campo Timestamp.

aws cloudwatch get-metric-statistics \ --metric-name "ServerlessDatabaseCapacity" \ --start-time "$(date -d '1 hour ago')" \ --end-time "$(date -d 'now')" \ --period 600 \ --namespace "AWS/DocDB" \ --statistics Minimum Maximum Average \ --dimensions Name=DBInstanceIdentifier,Value=my_instance \ --query 'sort_by(Datapoints[*].{min:Minimum,max:Maximum,avg:Average,ts:Timestamp},&ts)' \ --output table

O exemplo de Linux a seguir demonstra o monitoramento da capacidade de uma instância em um cluster. Ele mede a utilização mínima, máxima e média da capacidade de uma instância. As medições são realizadas uma vez por hora durante um período de três horas. Esses exemplos usam a DCUUtilization métrica que representa uma porcentagem do limite superior em DCUs, em vez de ServerlessDatabaseCapacity representar um número fixo de DCUs. Dessa forma, você não precisa saber os números reais dos valores mínimo e máximo de DCU na faixa de capacidade. É possível ver porcentagens que variam de 0 a 100.

aws cloudwatch get-metric-statistics \ --metric-name "DCUUtilization" \ --start-time "$(date -d '3 hours ago')" \ --end-time "$(date -d 'now')" \ --period 3600 \ --namespace "AWS/DocDB" \ --statistics Minimum Maximum Average \ --dimensions Name=DBInstanceIdentifier,Value=my_instance \ --query 'sort_by(Datapoints[*].{min:Minimum,max:Maximum,avg:Average,ts:Timestamp},&ts)' \ --output table

O exemplo do Linux a seguir realiza medições semelhantes às anteriores. Nesse caso, as medidas são para a métrica CPUUtilization. As medições são realizadas a cada dez minutos durante um período de uma hora. Os números representam a porcentagem da CPU disponível usada, com base nos recursos da CPU disponíveis até a configuração de capacidade máxima da instância.

aws cloudwatch get-metric-statistics \ --metric-name "CPUUtilization" \ --start-time "$(date -d '1 hour ago')" \ --end-time "$(date -d 'now')" \ --period 600 \ --namespace "AWS/DocDB" \ --statistics Minimum Maximum Average \ --dimensions Name=DBInstanceIdentifier,Value=my_instance \ --query 'sort_by(Datapoints[*].{min:Minimum,max:Maximum,avg:Average,ts:Timestamp},&ts)' \ --output table

O exemplo do Linux a seguir realiza medições semelhantes às anteriores. Nesse caso, as medidas são para a métrica FreeableMemory. As medições são realizadas a cada dez minutos durante um período de uma hora.

aws cloudwatch get-metric-statistics \ --metric-name "FreeableMemory" \ --start-time "$(date -d '1 hour ago')" \ --end-time "$(date -d 'now')" \ --period 600 \ --namespace "AWS/DocDB" \ --statistics Minimum Maximum Average \ --dimensions Name=DBInstanceIdentifier,Value=my_instance \ --query 'sort_by(Datapoints[*].{min:Minimum,max:Maximum,avg:Average,ts:Timestamp},&ts)' \ --output table

Monitorando o desempenho sem servidor do DocumentDB com Performance Insights

Você pode usar o Performance Insights para monitorar o desempenho das instâncias sem servidor do DocumentDB. Para saber os procedimentos do Performance Insights, consulte Monitoramento com o Performance Insights.

Os seguintes novos contadores do Performance Insights se aplicam às instâncias sem servidor do DocumentDB:

  • os.general.serverlessDBCapacity— A capacidade atual da instância em DCUs. O valor corresponde à ServerlessDatabaseCapacity CloudWatch métrica da instância.

  • os.general.dcuUtilization— A porcentagem da capacidade atual em relação à capacidade máxima configurada. O valor corresponde à DCUUtilization CloudWatch métrica da instância.

  • os.general.maxConfiguredDcu— A capacidade máxima que você configurou para essa instância sem servidor do DocumentDB. É medido em DCUs.

  • os.general.minConfiguredDcu— A capacidade mínima que você configurou para essa instância sem servidor do DocumentDB. É medido em DCUs.

Para ver a lista completa de contadores do Performance Insights, consulte Métricas de contadores do Performance Insights.

Quando os valores de vCPU são mostrados para uma instância sem servidor do DocumentDB no Performance Insights, esses valores representam estimativas com base no valor da DCU da instância. No intervalo padrão de um minuto, todos os valores de vCPU fracionários são arredondados para o número inteiro mais próximo. Para intervalos mais longos, o valor de vCPU mostrado é a média dos valores inteiros de vCPU para cada minuto.