

# Supervisión de métricas en DynamoDB con Amazon CloudWatch
<a name="Monitoring-metrics-with-Amazon-CloudWatch"></a>

Puede supervisar DynamoDB con CloudWatch, que recopila y procesa los datos sin procesar de DynamoDB y los convierte en métricas legibles casi en tiempo real. Estas estadísticas se retienen durante un tiempo, para que pueda acceder a la información histórica y obtener una mejor perspectiva sobre el rendimiento de su servicio o aplicación web. De forma predeterminada, los datos de las métricas de DynamoDB se envían a CloudWatch automáticamente. Para obtener más información, consulte [¿Qué es Amazon CloudWatch?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/WhatIsCloudWatch.html) y [Retención de métricas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#metrics-retention) en la *Guía del usuario de Amazon CloudWatch*.

**Topics**
+ [¿Cómo uso las métricas de DynamoDB?](#How-do-I-use-DynamoDB-metrics)
+ [Visualizar métricas en la consola de CloudWatch](#Viewing-metrics-in-CloudWatch-console)
+ [Visualización de las métricas en la AWS CLI](#Viewing-metrics-in-the-cli)
+ [Dimensiones y métricas de DynamoDB](metrics-dimensions.md)
+ [Creación de alarmas de CloudWatch en DynamoDB](Monitoring-metrics-creating-cloudwatch-alarms.md)

## ¿Cómo uso las métricas de DynamoDB?
<a name="How-do-I-use-DynamoDB-metrics"></a>

Las métricas mostradas por DynamoDB proporcionan información que puede analizar de diferentes maneras. En la siguiente lista se indican algunos usos frecuentes de las métricas. Se trata de sugerencias que puede usar como punto de partida y no de una lista completa.


**¿Cómo uso las métricas de DynamoDB?**  

|  ¿Cómo...?  |  Métricas relevantes  | 
| --- | --- | 
|  ¿Cómo puedo monitorear la tasa de eliminaciones de TTL en la tabla?   |  Puede monitorear `TimeToLiveDeletedItemCount` durante el periodo de tiempo especificado para realizar el seguimiento de la tasa de eliminaciones de TTL en la tabla. Para ver un ejemplo de una aplicación sin servidor que usa la métrica `TimeToLiveDeletedItemCount`, consulte [ Automatically archive items to S3 using DynamoDB time to live (TTL) with AWS Lambda and Amazon Data Firehose](https://aws.amazon.com/blogs/database/automatically-archive-items-to-s3-using-dynamodb-time-to-live-with-aws-lambda-and-amazon-kinesis-firehose/).  | 
|  ¿Cómo puedo determinar qué parte del rendimiento aprovisionado se está utilizando?  |  Puede monitorizar `ConsumedReadCapacityUnits` o `ConsumedWriteCapacityUnits` durante el periodo de tiempo especificado para realizar el seguimiento de la cantidad de desempeño provisionado que se está usando.  | 
|  ¿Cómo puedo determinar qué solicitudes superan las cuotas de rendimiento aprovisionado de una tabla?  |  `ThrottledRequests` se incrementa en uno si algún evento de la solicitud supera la cuota de rendimiento aprovisionada. A continuación, para saber a qué evento de la solicitud se le está imponiendo la limitación controlada, compare las métricas `ThrottledRequests` con `ReadThrottleEvents` y `WriteThrottleEvents` para la tabla y sus índices.  | 
|  ¿Cómo puedo determinar si se ha producido algún error en el sistema?  |  Puede monitorear `SystemErrors` para determinar si alguna solicitud ha dado lugar a un código HTTP 500 (error de servidor). Normalmente, esta métrica debe ser igual a cero. si no lo es, es conveniente investigar por qué.  | 
|  ¿Cómo puedo monitorear el valor de latencia de las operaciones de mi tabla?  |  Puede supervisar `SuccessfulRequestLatency` mediante el seguimiento de la latencia media y la latencia mediana a través de métricas de percentil (p50). Los picos ocasionales de la latencia no son motivo de preocupación. No obstante, si la latencia media o p50 (mediana) es alta, es posible que haya un problema subyacente que se debe solucionar. Para obtener más información, consulte [Solución de problemas de latencia en Amazon DynamoDB](TroubleshootingLatency.md).  | 

## Visualizar métricas en la consola de CloudWatch
<a name="Viewing-metrics-in-CloudWatch-console"></a>

Las métricas se agrupan primero por el espacio de nombres de servicio y, a continuación, por las diversas combinaciones de dimensiones dentro de cada espacio de nombres.

**Para ver las métricas en la consola de CloudWatch**

1. Abra la consola de CloudWatch en [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. En el panel de navegación, seleccione **Métricas, Todas las métricas**.

1. Seleccione el espacio de nombres **DynamoDB**. También puede seleccionar el espacio de nombres **Uso** para ver las métricas de uso de DynamoDB. Para obtener más información sobre las métricas de uso, consulte [Métricas de uso de AWS](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Service-Quota-Integration.html).

1. En la pestaña **Explorar** aparecen todas las métricas del espacio de nombres.

1. (Opcional) Para agregar este gráfico a un panel de CloudWatch, elija **Acciones, Agregar al panel**. 

## Visualización de las métricas en la AWS CLI
<a name="Viewing-metrics-in-the-cli"></a>

Para obtener información sobre métricas con la AWS CLI, utilice el comando de CloudWatch `list-metrics`. En el siguiente ejemplo, se enumeran todas las métricas del espacio de nombres de `AWS/DynamoDB`.

```
1.                 aws cloudwatch list-metrics --namespace "AWS/DynamoDB"
```

Para obtener estadísticas de métricas, utilice el comando `get-metric-statistics`. El siguiente comando obtiene estadísticas de `ConsumedReadCapacityUnits` para la tabla `ProductCatalog` en el periodo específico de 24 horas, con un grado de detalle de 5 minutos.

```
aws cloudwatch get-metric-statistics —namespace AWS/DynamoDB \
     —metric-name ConsumedReadCapacityUnits \
     —start-time 2023-11-01T00:00:00Z \
     —end-time 2023-11-02T00:00:00Z \
     —period 360 \
     —statistics Average \
     —dimensions Name=TableName,Value=ProductCatalog
```

El resultado de ejemplo aparece como se muestra a continuación:

```
{
    "Datapoints": [
        {
            "Timestamp": "2023-11-01T 09:18:00+00:00", 
            "Average": 20, 
            "Unit": "Count"
        }, 
        {
            "Timestamp": "2023-11-01T 04:36:00+00:00", 
            "Average": 22.5, 
            "Unit": "Count"
        }, 
        {
            "Timestamp": "2023-11-01T 15:12:00+00:00", 
            "Average": 20, 
            "Unit": "Count"
        }, ...
        {
            "Timestamp": "2023-11-01T 17:30:00+00:00", 
            "Average": 25, 
            "Unit": "Count"
        }
    ], 
    "Label": " ConsumedReadCapacityUnits "
}
```