AWS IoT をモニタリングする CloudWatch アラームの作成 - AWS IoT Core

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS IoT をモニタリングする CloudWatch アラームの作成

アラームの状態が変わったときに Amazon SNS メッセージを送信する Amazon CloudWatch のアラームを作成することができます。1 つのアラームで、指定した期間中、1 つのメトリクスを監視します。複数の期間にわたってメトリクスの値が一定のしきい値を超えると、1 つ以上のアクションが実行されます。アクションとして、Amazon SNS トピックまたは Auto Scaling ポリシーに送信される通知を指定できます。アラームは、持続している状態変化に対してのみアクションをトリガーします。CloudWatch のアラームは、メトリクスが特定の状態になっただけではアクションをトリガーしません。アクションを起動するには、状態が変化して、指定した期間継続している必要があります。

CloudWatch アラームが監視できるメトリクスはすべて、AWS IoT メトリクスとディメンション

モノが毎日正常に接続していない場合に通知されるようにするには?

  1. という名前の Amazon SNS トピックを作成するthings-not-connecting-successfullyし、その Amazon リソースネーム (ARN) を記録します。この手順では、トピックの ARN を sns-topic-arn とします。

    Amazon SNS 通知の作成方法については、「」Amazon SNS の使用開始

  2. アラームを作成します。

    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. アラームのテストを行います。

    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. アラームがCloudWatch コンソール

モノが毎日正常にデータをパブリッシュしていない場合に通知されるようにするには?

  1. という名前の Amazon SNS トピックを作成するthings-not-publishing-dataし、その Amazon リソースネーム (ARN) を記録します。この手順では、トピックの ARN を sns-topic-arn とします。

    Amazon SNS 通知の作成方法については、「」Amazon SNS の使用開始

  2. アラームを作成します。

    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. アラームのテストを行います。

    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. アラームがCloudWatch コンソール

Thing Shadow の更新が毎日拒否されている場合に通知されるようにするには?

  1. という名前の Amazon SNS トピックを作成するthings-shadow-updates-rejectedし、その Amazon リソースネーム (ARN) を記録します。この手順では、トピックの ARN を sns-topic-arn とします。

    Amazon SNS 通知の作成方法については、「」Amazon SNS の使用開始

  2. アラームを作成します。

    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. アラームのテストを行います。

    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. アラームがCloudWatch コンソール

ジョブ用の CloudWatch アラームを作成するにはどうすればよいですか?

Jobs サービスは、ジョブをモニタリングするための CloudWatch メトリクスを提供します。CloudWatch アラームを作成して、任意のジョブのメトリクス

次のコマンドは、Job に対して失敗したジョブ実行の総数を監視する CloudWatch アラームを作成します。SampleOTAJob 20以上のジョブの実行が失敗すると通知します。アラームは、レポートされた値を 300 秒ごとにチェックして、ジョブメトリクス FailedJobExecutionTotalCount をモニタリングします。報告された単一の値が 20 より大きい場合にアクティブになります。つまり、ジョブの開始以降、ジョブの実行が 20 回以上失敗したことを示します。アラームがオフになると、提供された Amazon SNS トピックに通知が送信されます。

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

次のコマンドは、ジョブの失敗したJob 実行の数を監視する CloudWatch アラームを作成します。SampleOTAJob 指定された期間内の。 その後、その期間中に 5 つ以上のジョブの実行が失敗すると通知します。アラームは、レポートされた値を 3600 秒ごとにチェックして、ジョブメトリクス FailedJobExecutionCount をモニタリングします。レポートされた単一の値が 5 より大きい場合にアクティブになります。つまり、過去 1 時間で 5 回以上ジョブ実行に失敗したということです。アラームがオフになると、提供された Amazon SNS トピックに通知が送信されます。

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