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

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

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

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

CloudWatch アラームがモニタリングできるすべてのメトリクスは、 で確認できますAWS IoT メトリクスとディメンション

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

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

    Amazon SNS 通知の作成方法については、[Getting Started with 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. things-not-publishing-data という名前の Amazon SNS トピックを作成し、対応する Amazon リソースネーム (ARN) を記録します。この手順では、トピックの ARN を sns-topic-arn とします。

    Amazon SNS 通知の作成方法については、[Getting Started with 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. things-shadow-updates-rejected という名前の Amazon SNS トピックを作成し、対応する Amazon リソースネーム (ARN) を記録します。この手順では、トピックの ARN を sns-topic-arn とします。

    Amazon SNS 通知の作成方法については、[Getting Started with 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 アラームを作成するにはどうすればよいですか?

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

次のコマンドは、Job SampleOTAJob の失敗したジョブ実行の合計数をモニタリングする CloudWatch アラームを作成し、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 SampleOTAJob で失敗したジョブ実行の数をモニタリングする CloudWatch アラームを作成します。その後、その期間中に 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