ネットワークアナライザのトレースメッセージログをリアルタイムで表示およびモニタリングする
ネットワークアナライザの設定にリソースを追加した場合は、トレースメッセージングをアクティブにして、リソースのトレースメッセージの受信を開始できます。AWS Management Console、AWS IoT Wireless API、AWS CLI のいずれかを使用できます。
前提条件
ネットワークアナライザを使用してトレースメッセージングをアクティブ化する前に、次の準備が必要です。
-
デフォルトのネットワークアナライザ設定に、モニタリングするリソースが追加されている。詳細については、「リソースを追加し、ネットワークアナライザの設定を更新する」を参照してください。
-
StartNetworkAnalyzerStream
リクエスト URL を使用して、署名済みリクエストが生成されている。リクエストは、このリクエストを行う AWS Identity and Access Management ロールの認証情報を使用して署名されます。詳細については、「署名付き URL を作成する」を参照してください。
コンソールを使用してトレースメッセージングをアクティブ化する
トレースメッセージングをアクティブにするには
-
AWS IoT コンソールの [Network Analyzer] (ネットワークアナライザ) ハブ
を開き、ネットワークアナライザの設定 NetworkAnalyzerConfig_Default を選択します。 -
ネットワークアナライザの設定の詳細ページで、[Activate trace messaging] (トレースメッセージングをアクティブ化) を選択し、[Activate] (アクティブ化) を選択します。
トレースメッセージの受信が開始され、最新のトレースメッセージからコンソールに表示されます。
注記
メッセージングセッションの開始後、トレースメッセージの受信には、セッションを非アクティブ化するか、トレースセッションを終了するまで、追加コストが発生する可能性があります。料金の詳細については、「AWS IoT Core の料金
」を参照してください。
トレースメッセージの表示とモニタリング
トレースメッセージングをアクティブにすると、WebSocket 接続が確立され、トレースメッセージが最新のものからリアルタイムで表示されます。プリファレンスをカスタマイズして、各ページに表示するトレースメッセージの数を指定し、各メッセージの関連するフィールドのみを表示させることができます。例えば、トレースメッセージログをカスタマイズして、ログレベルが ERROR
に設定されているワイヤレスゲートウェイリソースのログのみを表示することができます。そうすると、ゲートウェイでエラーをすばやく特定してデバッグできます。トレースメッセージには、次に示す情報が含まれます。
-
メッセージ番号: 最後に受信したメッセージが最初になるように付番された一意の番号。
-
リソース ID: リソースのワイヤレスゲートウェイまたはワイヤレスデバイス ID。
-
タイムスタンプ: メッセージが受信された時刻。
-
メッセージ ID: AWS IoT Core for LoRaWAN が受信した各メッセージに割り当てた識別子。
-
FPort: WebSocket 接続を使用してデバイスと通信するための周波数ポート。
-
DevEui: ワイヤレスデバイスの拡張一意識別子 (EUI)。
-
リソース: モニタリング対象リソースがワイヤレスデバイスかワイヤレスゲートウェイか。
-
イベント: ワイヤレスデバイスのログメッセージのイベント。Join、Rejoin、Uplink_Data、Downlink_Data、または Registration。
-
ログレベル: デバイスの
INFO
またはERROR
ログストリームに関する情報。
ネットワークアナライザ JSON ログメッセージ
一度に 1 つのトレースメッセージを選択して、そのメッセージの JSON ペイロードを表示することもできます。トレースメッセージログで選択したメッセージに応じて、2 つの部分 (CustomerLog と LoRaFrame) が含まれていることを示す情報が JSON ペイロードに表示されます。
CustomerLog
JSON の CustomerLog 部分には、メッセージを受信したリソースのタイプと識別子、ログレベル、およびメッセージの内容が表示されます。次の例は、CustomerLog ログメッセージの例を示しています。JSON の message
フィールドを使用して、エラーとその解決方法に関する詳細情報を取得できます。
LoRaFrame
JSON の LoRaFrame 部分には、メッセージ ID があり、デバイスの物理ペイロードとワイヤレスメタデータに関する情報が含まれています。
次の例に、トレースメッセージの構造を示します。
export type TraceMessage = { ResourceId: string; Timestamp: string; LoRaFrame: { MessageId: string; PhysicalPayload: any; WirelessMetadata: { fPort: number; dataRate: number; devEui: string; frequency: number, timestamp: string; }, } CustomerLog: { resource: string; wirelessDeviceId: string; wirelessDeviceType: string; event: string; logLevel: string; messageId: string; message: string; }, };
レビューと以降のステップ
このセクションでは、トレースメッセージを表示し、この情報を使用してエラーをデバッグする方法を学習しました。すべてのメッセージを表示したら、次の操作を実行できます。
-
トレースメッセージングを無効化する
追加コストが発生しないようにするには、トレースメッセージングセッションを非アクティブにします。セッションを非アクティブにすると、WebSocket 接続が切断され、追加のトレースメッセージが受信されなくなります。コンソールで既存のメッセージを引き続き表示することができます。
-
設定のフレーム情報を編集する
ネットワークアナライザの設定を編集して、フレーム情報を非アクティブ化するかどうかを選択し、メッセージのログレベルを選択できます。設定を更新する前に、トレースメッセージングセッションを非アクティブ化することを検討してください。これらの編集を行うには、AWS IoTコンソールの [Network Analyzer details] (ネットワークアナライザの詳細) ページ
を選択し、[Edit] (編集) を選択します。その後、新しい設定で設定を更新し、トレースメッセージングをアクティブにして、更新されたメッセージを表示できます。 -
設定にリソースを追加する
また、ネットワークアナライザの設定にリソースを追加し、リアルタイムでモニタリングすることもできます。のワイヤレスゲートウェイとワイヤレスデバイスリソースを、合わせて最大 250 個追加できます。リソースを追加するには、AWS IoT コンソールの [Network Analyzer details] (ネットワークアナライザの詳細) ページ
で、[Resources] (リソース) タブを選択し、[Add resources] (リソースを追加) を選択します。その後、新しいリソースで設定を更新し、トレースメッセージングをアクティブにして、追加のリソースの更新されたメッセージを表示できます。
設定の編集とリソースの追加によるネットワークアナライザ設定の更新の詳細については、「リソースを追加し、ネットワークアナライザの設定を更新する」を参照してください。