Creación de CloudWatch alarmas para monitorizar AWS IoT - AWS IoT Core

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Creación de CloudWatch alarmas para monitorizar AWS IoT

Puede crear una CloudWatch alarma que envíe un mensaje de Amazon SNS cuando la alarma cambie de estado. Una alarma vigila una métrica individual durante un periodo de tiempo que usted especifica. Cuando el valor de la métrica supera un umbral determinado en un número de períodos de tiempo, se realizan una o varias acciones. La acción puede ser una notificación que se envía a un tema de Amazon SNS o a una política de Auto Scaling. Las alarmas activan acciones únicamente en caso de cambios de estado sostenidos. CloudWatch las alarmas no activan acciones simplemente porque se encuentren en un estado determinado; el estado debe haber cambiado y mantenido durante un número específico de períodos.

Puede ver todas las métricas que pueden monitorizar CloudWatch las alarmasAWS IoT métricas y dimensiones.

¿Cómo se me puede enviar una notificación si mis objetos no se conectan correctamente cada día?

  1. Cree un tema de Amazon SNS denominado things-not-connecting-successfully y registre su nombre de recurso de Amazon (ARN). Este procedimiento se referirá al ARN de su tema como sns-topic-arn.

    Para obtener más información sobre cómo crear una notificación de Amazon SNS, consulte Introducción a Amazon SNS.

  2. Cree la alarma.

    aws cloudwatch put-metric-alarm \ --alarm-name ConnectSuccessAlarm \ --alarm-description "Alarm when my Things don't connect successfully" \ --namespace AWS/IoT \ --metric-name Connect.Success \ --dimensions Name=Protocol,Value=MQTT \ --statistic Sum \ --threshold 10 \ --comparison-operator LessThanThreshold \ --period 86400 \ --evaluation-periods 1 \ --alarm-actions sns-topic-arn
  3. Pruebe la alarma.

    aws cloudwatch set-alarm-state --alarm-name ConnectSuccessAlarm --state-reason "initializing" --state-value OK
    aws cloudwatch set-alarm-state --alarm-name ConnectSuccessAlarm --state-reason "initializing" --state-value ALARM
  4. Comprueba que la alarma aparece en la CloudWatch consola.

¿Cómo se me puede enviar una notificación si mis objetos no publican datos cada día?

  1. Cree un tema de Amazon SNS denominado things-not-publishing-data y registre su nombre de recurso de Amazon (ARN). Este procedimiento se referirá al ARN de su tema como sns-topic-arn.

    Para obtener más información sobre cómo crear una notificación de Amazon SNS, consulte Introducción a Amazon SNS.

  2. Cree la alarma.

    aws cloudwatch put-metric-alarm \ --alarm-name PublishInSuccessAlarm\ --alarm-description "Alarm when my Things don't publish their data \ --namespace AWS/IoT \ --metric-name PublishIn.Success \ --dimensions Name=Protocol,Value=MQTT \ --statistic Sum \ --threshold 10 \ --comparison-operator LessThanThreshold \ --period 86400 \ --evaluation-periods 1 \ --alarm-actions sns-topic-arn
  3. Pruebe la alarma.

    aws cloudwatch set-alarm-state --alarm-name PublishInSuccessAlarm --state-reason "initializing" --state-value OK
    aws cloudwatch set-alarm-state --alarm-name PublishInSuccessAlarm --state-reason "initializing" --state-value ALARM
  4. Compruebe que la alarma aparece en la CloudWatch consola.

¿Cómo se me puede enviar una notificación si las actualizaciones de la sombra de mi objeto se rechazan cada día?

  1. Cree un tema de Amazon SNS denominado things-shadow-updates-rejected y registre su nombre de recurso de Amazon (ARN). Este procedimiento se referirá al ARN de su tema como sns-topic-arn.

    Para obtener más información sobre cómo crear una notificación de Amazon SNS, consulte Introducción a Amazon SNS.

  2. Cree la alarma.

    aws cloudwatch put-metric-alarm \ --alarm-name UpdateThingShadowSuccessAlarm \ --alarm-description "Alarm when my Things Shadow updates are getting rejected" \ --namespace AWS/IoT \ --metric-name UpdateThingShadow.Success \ --dimensions Name=Protocol,Value=MQTT \ --statistic Sum \ --threshold 10 \ --comparison-operator LessThanThreshold \ --period 86400 \ --unit Count \ --evaluation-periods 1 \ --alarm-actions sns-topic-arn
  3. Pruebe la alarma.

    aws cloudwatch set-alarm-state --alarm-name UpdateThingShadowSuccessAlarm --state-reason "initializing" --state-value OK
    aws cloudwatch set-alarm-state --alarm-name UpdateThingShadowSuccessAlarm --state-reason "initializing" --state-value ALARM
  4. Compruebe que la alarma aparece en la CloudWatch consola.

¿Cómo puedo crear una CloudWatch alarma para los trabajos?

El servicio Jobs proporciona CloudWatch métricas para que pueda supervisar sus trabajos. Puede crear CloudWatch alarmas para monitorizar cualquier tipo de alarmaMétricas de trabajos.

El siguiente comando crea una CloudWatch alarma para supervisar el número total de ejecuciones de trabajos fallidas de Job SampleotaJob y le notifica cuando se han producido errores en más de 20 ejecuciones de trabajos. La alarma monitoriza la métrica de trabajos FailedJobExecutionTotalCount comprobando el valor notificado cada 300 segundos. Se activa cuando un único valor notificado es mayor que 20, lo que significa que hubo más de 20 ejecuciones de trabajo fallidas desde que se inició el trabajo. Cuando la alarma se apaga, envía una notificación al tema de Amazon SNS proporcionado.

aws cloudwatch put-metric-alarm \ --alarm-name TotalFailedJobExecution-SampleOTAJob \ --alarm-description "Alarm when total number of failed job execution exceeds the threshold for SampleOTAJob" \ --namespace AWS/IoT \ --metric-name FailedJobExecutionTotalCount \ --dimensions Name=JobId,Value=SampleOTAJob \ --statistic Sum \ --threshold 20 \ --comparison-operator GreaterThanThreshold \ --period 300 \ --unit Count \ --evaluation-periods 1 \ --alarm-actions arn:aws:sns:<AWS_REGION>:<AWS_ACCOUNT_ID>:SampleOTAJob-has-too-many-failed-job-ececutions

El siguiente comando crea una CloudWatch alarma para supervisar el número de ejecuciones de tareas fallidas de Job SampleotaJob en un período determinado. A continuación, lo notifica cuando más de cinco ejecuciones de un trabajo han fracasado durante ese periodo. La alarma monitoriza la métrica de trabajos FailedJobExecutionCount comprobando el valor notificado cada 3600 segundos. Se activa cuando un único valor notificado es mayor que 5, lo que significa que hubo más de 5 ejecuciones de trabajo fallidas en la última hora. Cuando la alarma se apaga, envía una notificación al tema de Amazon SNS proporcionado.

aws cloudwatch put-metric-alarm \ --alarm-name FailedJobExecution-SampleOTAJob \ --alarm-description "Alarm when number of failed job execution per hour exceeds the threshold for SampleOTAJob" \ --namespace AWS/IoT \ --metric-name FailedJobExecutionCount \ --dimensions Name=JobId,Value=SampleOTAJob \ --statistic Sum \ --threshold 5 \ --comparison-operator GreaterThanThreshold \ --period 3600 \ --unit Count \ --evaluation-periods 1 \ --alarm-actions arn:aws:sns:<AWS_REGION>:<AWS_ACCOUNT_ID>:SampleOTAJob-has-too-many-failed-job-ececutions-per-hour