¿Por qué mi llamada a la API GetMetricStatistics de CloudWatch no devuelve puntos de datos?

4 minutos de lectura
0

Mi llamada a la API «GetMetricStatistics» de Amazon CloudWatch no devuelve ningún punto de datos. Sin embargo, los puntos de datos están disponibles en la consola de CloudWatch.

Resolución

Nota: Si recibe errores al ejecutar los comandos de Interfaz de la línea de comandos de AWS (AWS CLI), asegúrese de usar la versión más reciente de AWS CLI.

CloudWatch es un servicio regional, así que asegúrese de que la llamada a la API utilice la región de AWS correcta. CloudWatch emite la llamada a la API GetMetricStatistics con varios argumentos, y esos argumentos deben coincidir con las propiedades de la métrica. Estos argumentos distinguen entre mayúsculas y minúsculas, así que asegúrese de que los nombres y las mayúsculas coincidan en la configuración de la consola de CloudWatch. Los errores suelen ser el resultado de argumentos incorrectos.

Dimensiones

Si la métrica se crea con varias dimensiones, solo puede recuperar los puntos de datos correspondientes si especifica todas las dimensiones configuradas. Por ejemplo, supongamos que publica una métrica denominada ServerStats en el espacio de nombres DataCenterMetric con estas propiedades:

Dimensions: Server=Prod, Domain=Frankfurt, Unit: Count, Timestamp: 2016-10-31T12:30:00Z, Value: 105

Para recuperar los puntos de datos de esta métrica, especifique las siguientes dimensiones:

Server=Prod,Domain=Frankfurt

Sin embargo, si especifica solo una de las dos dimensiones, no podrá recuperar los puntos de datos. Vea el siguiente ejemplo:

Server=Prod

Con AWS CLI, el formato para especificar las dimensiones en el comando get-metric-statistics es diferente del comando put-metric-data. Asegúrese de utilizar un formato similar al siguiente:

"Name"=string, "Value"=string

Nota: En este caso, el formato Nombre=Valor no es correcto.

Consulte el siguiente ejemplo de una llamada a get-metric-statistics:

aws cloudwatch get-metric-statistics --metric-name "MyMetric" --start-time 2018-04-08T23:18:00Z --end-time 2018-04-09T23:18:00Z --period 3600 --namespace "MyNamespace" --statistics Maximum --dimensions Name=Server,Value=Prod

Consulte el siguiente ejemplo de una llamada a put-metric-data:

aws cloudwatch put-metric-data --namespace "MyNamespace" --metric-name "MyMetric" --dimensions Server=Prod --value 10

Período

Si la métrica no se aplica al valor del período especificado, no se devolverá ningún punto de datos.

Por ejemplo, si activa la supervisión básica para una instancia, Amazon Elastic Compute Cloud (Amazon EC2) envía puntos de datos cada cinco minutos. Por ejemplo, supongamos que Amazon EC2 envía los puntos de datos en las marcas de tiempo 12:00, 12:05, 12:10, etc. La hora de inicio y la hora de finalización son las 12:01 y las 12:04 y, a continuación, intenta recuperar los puntos de datos con un período de 60 segundos. En este caso, no verá ningún punto de datos. Se recomienda hacer que la hora de inicio y la hora de finalización superen la granularidad mínima que ofrece la métrica. (Para este caso de uso, la granularidad es de 5 minutos). O bien, usr un período que sea mayor o igual a la granularidad mínima que ofrece la métrica.

Estadísticas

Para recuperar las estadísticas de percentiles de una métrica, utilice ExtendedStatistic.

CloudWatch utiliza puntos de datos sin procesar para calcular los percentiles. Al publicar datos mediante un conjunto de estadísticas, puede recuperar las estadísticas de percentiles de estos datos solo si se cumple una de las siguientes condiciones:

  • El número de muestras del conjunto de estadísticas es 1.
  • El mínimo y el máximo del conjunto de estadísticas son iguales.

Unidad

  • Si la unidad especificada es diferente de la que está configurada para la métrica, no se devolverá ningún punto de datos.
  • Si no especifica el argumento de la unidad, se devuelven los puntos de datos de todas las unidades.

Hora de inicio y hora de finalización

  • Formatee los argumentos de hora de inicio y finalización tal como se especifica en la documentación de GetMetricStatistics.
  • Si no se introduce ningún punto de datos para la métrica entre la hora de inicio y la hora de finalización, no se devolverá ningún punto de datos.

Nota: Los puntos de datos con marcas de tiempo de hace 24 horas o más pueden tardar al menos 48 horas en estar disponibles para get-metric-statistics. Para obtener más información, consulte put-metric-data.


Información relacionada

AWS services that publish CloudWatch metrics (Servicios de AWS que publican métricas de CloudWatch)

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace un año