デバイスとAzure IoT Hub間の通信をのぞき見するツール

---

**通信を見る記事一覧**

* デバイスとAzure IoT Hub間の通信をのぞき見するツール
* [デバイスとAzure IoT Central間の通信をのぞき見するツール](https://qiita.com/matsujirushi/items/192ab655b7f94510072a)
* [デバイスとAzure Event Hub間の通信をのぞき見するツール](https://qiita.com/matsujirushi/items/8755050d361ab426922e)

---

<img width="500" alt="image.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109634/fc282fb2-3226-0bb0-8f47-e1c83dbbe673.png">

> 上図は、デバイスとAzure IoT Hubの間をモニタリングしている風に書きましたが、実際のツールは、Azure IoT Hubに接続してAzure IoT Hubから情報を取得しています。

Azure IoTデバイスを開発しているときに、Azure IoT Hubへ送信したメッセージを見たいとか、今のデバイスツインの値を知りたいとか、普通にありますよね。
このようなニーズに応えるツールがいくつかあります。言い方をかえると、いくつもあって、どれを使えば良いのか迷ってしまいますｗ

ここでは、わたしのオススメ順に、いくつか紹介します。

# Azure IoT Explorer （★★★）
**オススメ度、星３つ（★★★）**

Windowsにインストールして、スタンドアロンで動くツールです。
スタンドアロンなので、サクサク感が良いです。GUIなのも嬉しい。
IoT Plug and Playデバイス向けの機能があるので、IoT Plug and Play対応デバイスを開発する際は、利用必須です。
名称に`preview`と付いているので若干不安になりますが、わたしが普段使いしている範囲では、問題は出ていないです。（ソース開示されているので、問題が出た時は自ら直すことも！？）

<img width="600" alt="image.gif" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109634/d3a1ad2c-d7b4-8d24-5edf-677245cea418.gif">

* [インストールファイル @ GitHub](https://github.com/Azure/azure-iot-explorer/releases)
* [公式ドキュメント @ Microsoft Docs](https://docs.microsoft.com/ja-jp/azure/iot-fundamentals/howto-use-iot-explorer	
?WT.mc_id=IoT-MVP-5002686)
* [分かりやすいドキュメント @ CP-Tech Web](https://cptechweb.teldevice.co.jp/hc/ja/articles/1500006871241-Azure-IoT-Explorer-%E3%81%AE%E5%88%A9%E7%94%A8%E6%89%8B%E9%A0%86)

# Azure IoT Hub extension for Visual Studio Code （★★☆）
**オススメ度、星２つ（★★☆）**

みんな大好き、Visual Studio Codeに入れて使うツールです。
コンテキストメニュー（右クリック）による操作なので、Azure IoT Hubの仕組み的なものが頭に入っていないと、ちょっと操作しにくいと感じます。（が、慣れれば大丈夫）
メニューが日本語なので、「英語はちょっと．．．」な方には良いかも。

<img width="600" alt="image.gif" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109634/8444c273-83fe-ea3a-ebe9-ab7cfc0c6ea1.gif">

* [インストールサイト @ Visual Studio Marketplace](https://marketplace.visualstudio.com/items?itemName=vsciot-vscode.azure-iot-toolkit)
* [ドキュメント @ GitHub](https://github.com/Microsoft/vscode-azure-iot-toolkit/wiki)

# Cloud Explorer for Visual Studio （★★☆）
**オススメ度、星２つ（★★☆）**

わたし大好き、Visual Studioに入れて使うツールです。
コンテキストメニュー（右クリック）による操作なので、Azure IoT Hubの仕組み的なものが頭に入っていないと、ちょっと操作しにくいと感じます。（が、慣れれば大丈夫）
こちらも、メニューは日本語化されています。ありがたい。

<img width="600" alt="image.gif" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109634/724f2998-aeac-c3e6-5592-1d42f935ea91.gif">

* [インストールファイル @ Visual Studio Marketplace](https://marketplace.visualstudio.com/items?itemName=ms-azuretools.CloudExplorerForVS2019)
* [公式ドキュメント @ Microsoft Docs](https://docs.microsoft.com/ja-jp/azure/iot-hub/iot-hub-visual-studio-cloud-device-messaging?WT.mc_id=IoT-MVP-5002686)

# Azure IoT extension for Azure CLI （★☆☆）
**オススメ度、星１つ（★☆☆）**

コマンドライン（黒画面）でAzureを操作するAzure CLIのAzure IoT拡張です。
とにかく機能が豊富。
AzureポータルにあるAzure Cloud Shellでも使うことができるので、パソコンにアプリをインストールできないときに利用します。
ガチ攻めたい方向け。

<img width="600" alt="image.gif" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109634/eb0860fe-6d6e-5dd9-8a59-3a1553fd6a6a.gif">

* [インストール手順 @ GitHub](https://github.com/Azure/azure-iot-cli-extension#installation)
* [公式ドキュメント @ Microsoft Docs](https://docs.microsoft.com/ja-jp/azure/iot-hub/iot-hub-device-management-iot-extension-azure-cli-2-0?WT.mc_id=IoT-MVP-5002686)
* [公式コマンドリファレンス @ Microsoft Docs](https://docs.microsoft.com/en-us/cli/azure/iot?WT.mc_id=IoT-MVP-5002686)

# Azureポータル （☆☆☆）
**オススメ度、星ゼロ（☆☆☆）**

Azureポータルにも、デバイスをモニタリングする機能があります。

<img width="600" alt="image.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109634/b3ec7253-c6a1-8e66-82f8-72d7ddd3a655.png">

が！！
なんと、一番良く使うであろうD2Cメッセージのモニタリングが無いです。
（発見した方は、編集リクエストやコメントもらえると大変嬉しいです。）

# Device Explorer （☆☆☆）
**オススメ度、星ゼロ（☆☆☆）**

昔はDevice Explorerを一番使っていました。
今はAzure IoT Explorer使用が推奨です。このDevice Explorerはディスコンです。（GitHub上のmasterブランチからは削除されました。）

https://github.com/Azure/azure-iot-sdk-csharp/tree/lts_2020_01/tools/DeviceExplorer

# 参考リンク

* [Azure IoT Hubのツール @ matsujirushi’s blog](https://matsujirushi.hatenablog.jp/entry/2019/07/07/110759)
* [Azure IoT Central用デバイスの開発 @ SlideShare](https://www.slideshare.net/TakashiMatsuoka2/azure-iot-central-250023400)