

サポート終了通知: 2026 年 5 月 20 日、 AWS は のサポートを終了します AWS IoT Events。2026 年 5 月 20 日以降、 AWS IoT Events コンソールまたは AWS IoT Events リソースにアクセスできなくなります。詳細については、[AWS IoT Events 「サポート終了](https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-end-of-support.html)」を参照してください。

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

# AWS IoT Events （AWS CLI) でディテクターモデルを分析する
<a name="analyze-api-api"></a>

 AWS IoT Events ディテクターモデルをプログラムで分析することで、その構造、動作、パフォーマンスに関する貴重なインサイトが得られます。この API ベースのアプローチにより、自動分析、既存のワークフローとの統合、複数のディテクターモデルで一括操作を実行できるようになります。[StartDetectorModelAnalysis](https://docs.aws.amazon.com/iotevents/latest/apireference/API_StartDetectorModelAnalysis.html) API を活用することで、モデルの詳細な調査を開始できるため、潜在的な問題を特定し、ロジックフローを最適化し、IoT イベント処理がビジネス要件と一致していることを確認するのに役立ちます。

次の手順では、 AWS CLI を使用してディテクターモデルを分析します。

**を使用してディテクターモデルを分析するには AWS CLI**

1. 次のコマンドを実行して、分析をスタートします。

   ```
   aws iotevents start-detector-model-analysis --cli-input-json file://file-name.json
   ```
**注記**  
*ファイル名*を、ディテクターモデル定義を含むファイルの名前に置き換えます。  
**Example ディテクターモデルの定義**  

   ```
   {
       "detectorModelDefinition": {
           "states": [
               {
                   "stateName": "TemperatureCheck",
                   "onInput": {
                       "events": [
                           {
                               "eventName": "Temperature Received",
                               "condition": "isNull($input.TemperatureInput.sensorData.temperature)==false",
                               "actions": [
                                   {
                                       "iotTopicPublish": {
                                           "mqttTopic": "IoTEvents/Output"
                                       }
                                   }
                               ]
                           }
                       ],
                       "transitionEvents": []
                   },
                   "onEnter": {
                       "events": [
                           {
                               "eventName": "Init",
                               "condition": "true",
                               "actions": [
                                   {
                                       "setVariable": {
                                           "variableName": "temperatureChecked",
                                           "value": "0"
                                       }
                                   }
                               ]
                           }
                       ]
                   },
                   "onExit": {
                       "events": []
                   }
               }
           ],
           "initialStateName": "TemperatureCheck"
       }
   }
   ```

   を使用して既存のディテクターモデル AWS CLI を分析する場合は、次のいずれかを選択してディテクターモデル定義を取得します。
   +  AWS IoT Events コンソールを使用する場合は、次の操作を行います。

     1. ナビゲーションペインで、**ディテクターモデル**を選択します。

     1. **ディテクターモデル**で、ターゲットディテクターモデルを選択します。

     1. **アクション**から**ディテクターモデルをエクスポート**を選択して、ディテクターモデルをダウンロードします。ディテクターモデルは JSON で保存されます。

     1. ディテクターモデルの JSON ファイルを開きます。

     1. 必要なのは `detectorModelDefinition` オブジェクトだけです。以下を削除します。
        + ページ上部の最初の中括弧 (`{`)
        + `detectorModel` 線
        + `detectorModelConfiguration` オブジェクト
        + ページ下部の最後の中括弧 (`}`)

     1. ファイルを保存します。
   + を使用する場合は AWS CLI、次の操作を行います。

     1. ターミナルで次のコマンドを実行します。

        ```
        aws iotevents describe-detector-model --detector-model-name detector-model-name
        ```

     1. *ディテクターモデルの名前*をディテクターモデルの名前に置き換えます。

     1. `detectorModelDefinition` オブジェクトをテキストエディタにコピーします。

     1. `detectorModelDefinition` の外側に中括弧 (`{}`) を追加します。

     1. ファイルを JSON で保存します。  
**Example レスポンスの例**  

   ```
   {
       "analysisId": "c1133390-14e3-4204-9a66-31efd92a4fed"
   }
   ```

1. 出力から分析 ID をコピーします。

1. 次のコマンドを実行して、分析のステータスを取得します。

   ```
   aws iotevents describe-detector-model-analysis --analysis-id "analysis-id"
   ```
**注記**  
*analysis-id* をコピーした分析 ID に置き換えます。  
**Example レスポンスの例**  

   ```
   {
       "status": "COMPLETE"
   }
   ```

   ステータスは、次のいずれかの値になります。
   + `RUNNING` – AWS IoT Events はディテクターモデルを分析しています。このプロセスは、完了するまでに最大 1 分かかる場合があります。
   + `COMPLETE` – ディテクターモデルの分析 AWS IoT Events を完了しました。
   + `FAILED` - AWS IoT Events ディテクターモデルを分析できませんでした。あとでもう一度試してみてください。

1. 次のコマンドを実行して、ディテクターモデルの 1 つ以上の分析結果を取得します。
**注記**  
*analysis-id* をコピーした分析 ID に置き換えます。

   ```
   aws iotevents get-detector-model-analysis-results --analysis-id "analysis-id"
   ```  
**Example レスポンスの例**  

   ```
   {
       "analysisResults": [
           {
               "type": "data-type",
               "level": "INFO",
               "message": "Inferred data types [Integer] for $variable.temperatureChecked",
               "locations": []
           },
           {
               "type": "referenced-resource",
               "level": "ERROR",
               "message": "Detector Model Definition contains reference to Input 'TemperatureInput' that does not exist.",
               "locations": [
                   {
                       "path": "states[0].onInput.events[0]"
                   }
               ]
           }
       ]
   }
   ```

**注記**  
がディテクターモデルの分析 AWS IoT Events を開始した後、分析結果を取得するまでに最大 24 時間かかります。