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

Puedes crear una CloudWatch alarma que envíe un SNS mensaje de Amazon 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 enviada a un SNS tema de Amazon 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 SNS tema de Amazon con el nombre things-not-connecting-successfully y registre su nombre de recurso de Amazon (ARN). Este procedimiento se referirá a su tema ARN comosns-topic-arn.

    Para obtener más información sobre cómo crear una SNS notificación de Amazon, consulta Cómo empezar con 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 SNS tema de Amazon con el nombre things-not-publishing-data y registre su nombre de recurso de Amazon (ARN). Este procedimiento se referirá a su tema ARN comosns-topic-arn.

    Para obtener más información sobre cómo crear una SNS notificación de Amazon, consulta Cómo empezar con 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. Comprueba 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 SNS tema de Amazon con el nombre things-shadow-updates-rejected y registre su nombre de recurso de Amazon (ARN). Este procedimiento se referirá a su tema ARN comosns-topic-arn.

    Para obtener más información sobre cómo crear una SNS notificación de Amazon, consulta Cómo empezar con 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. Comprueba 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 tareas fallidas de Job SampleOTAJob y le notifica cuando se han producido errores en la ejecución de más de 20 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 suena la alarma, envía una notificación al SNS tema de Amazon 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 suena la alarma, envía una notificación al SNS tema de Amazon 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