Azure Digital Twins CLI コマンド セット

Azure portal で Azure Digital Twins インスタンスを管理できるだけでなく、Azure Digital Twins には、サービスで主要なアクションのほとんどを実行するために使用できる Azure CLI のコマンド セットもあります。 この記事では、Azure Digital Twins の Azure CLI コマンド セットについて、その使用方法、取得方法、使用の要件も含めて説明します。

コマンドセットを使用して実行できる操作には、次のようなものがあります。

  • Azure Digital Twins インスタンスの管理
  • モデルの管理
  • デジタル ツインの管理
  • ツイン リレーションシップの管理
  • エンドポイントの構成
  • ルートの管理
  • Azure ロールベースのアクセス制御 (Azure RBAC) を使用したセキュリティの構成

コマンド セットは az dt という名前で、Azure CLI 用の Azure IoT 拡張機能の一部です。 コマンドとその用途の完全な一覧は、az iot コマンド セット az iotの参照ドキュメントで参照できます。

使用する (デプロイと検証)

CLI は、インスタンスの一般的な管理だけでなく、デプロイと検証にも役立つツールです。

  • コントロール プレーン コマンドを使用すると、新しいインスタンスのデプロイを反復可能にしたり、自動化したりすることができます。
  • データ プレーン コマンドを使用すると、インスタンスの値をすばやく確認し、操作が期待どおりに完了したことを確認できます。

コマンド セットを取得する

Azure Digital Twins コマンドは、Azure CLI (azure iot) の Azure IoT 拡張機能の一部であるため、次の手順に従い、az dt コマンドを使用して、最新の azure-iot 拡張機能を使用していることを確認してください。

CLI バージョンの要件

PowerShell で Azure CLI を使用している場合、拡張機能パッケージの要件として、Azure CLI バージョンが 2.3.1 以上である必要があります。

Azure CLI のバージョンを確認するには、次の CLI コマンドを使用します。

az --version

Azure CLI をインストールまたは新しいバージョンに更新する方法については、「Azure CLI のインストール」を参照してください。

拡張機能を取得する

拡張機能を必要とするコマンドを初めて使用するときに、それをインストールするように求めるプロンプトが Azure CLI により自動的に表示されます。

それ以外の場合は、次のコマンドを使用して、いつでも拡張機能を自分でインストールできます (または、以前のバージョンが既にあることがわかった場合はそれを更新します)。 このコマンドは、Azure Cloud Shell またはローカルの Azure CLI で実行できます。

az extension add --upgrade --name azure-iot

異なるシェルで特殊文字を使用する

一部の az dt コマンドでは、特定のシェル環境で適切に解析するためにエスケープする必要がある特殊文字が使用されます。 このセクションのヒントを使用すると、選択したシェルでどのような場合にこれを行う必要があるのかを知るのに役立ちます。

Bash

Bash 環境では、ここに示す特殊文字のヒントを使用してください。

クエリ

多くのツイン クエリでは、$ 文字がツインの $dtId プロパティを参照するのに使用されます。 az dt twin query コマンドを使用して Cloud Shell Bash 環境でクエリを実行する場合は、バックスラッシュ (\) で$文字をエスケープします。

次に示すのは、Cloud Shell Bash 環境で CLI コマンドを使用してツインのクエリを実行する例です。

az dt twin query --dt-name <instance-hostname-or-name> --query-command "SELECT * FROM DigitalTwins T Where T.\$dtId = 'room0'"

PowerShell

PowerShell 環境では、ここに示す特殊文字のヒントを使用してください。

インライン JSON

az dt twin create のような一部のコマンドでは、インライン JSON の形式でツイン情報を入力することができます。 PowerShell 環境でインライン JSON を入力する場合は、バックスラッシュ記号 (\) を使用して JSON 内の二重引用符 (") をエスケープします。

PowerShell で CLI コマンドを使用してツインを作成する例を次に示します。

az dt twin create --dt-name <instance-hostname-or-name> --dtmi "dtmi:contosocom:DigitalTwins:Thermostat;1" --twin-id thermostat67 --properties '{\"Temperature\": 0.0}'

ヒント

インライン JSON をサポートするコマンドの多くは、ファイル パスとしての入力もサポートしています。これは、シェル固有のテキスト要件を回避するのに役立ちます。

クエリ

多くのツイン クエリでは、$ 文字がツインの $dtId プロパティを参照するのに使用されます。 az dt twin query コマンドを使用して PowerShell 環境でクエリを実行する場合は、バックティック文字で $ 文字をエスケープします。

PowerShell で CLI コマンドを使用してツインのクエリを実行する例を次に示します。

az dt twin query --dt-name <instance-hostname-or-name> --query-command "SELECT * FROM DigitalTwins T Where T.`$dtId = 'room0'"

Windows CMD

ローカルの Windows CMD には、ここに示す特殊文字のヒントを使用します。

インライン JSON

az dt twin create のような一部のコマンドでは、インライン JSON の形式でツイン情報を入力することができます。 ローカルの Windows CMD ウィンドウにインライン JSON を入力する場合は、パラメーター値を単一引用符 (') ではなく二重引用符 (") で囲み、JSON 内の二重引用符文字をバックスラッシュ (\) でエスケープします。

ローカル Windows CMD で CLI コマンドを使用してツインを作成する例を次に示します。

az dt twin create --dt-name <instance-hostname-or-name> --dtmi "dtmi:contosocom:DigitalTwins:Thermostat;1" --twin-id thermostat67 --properties "{\"Temperature\": 0.0}"

ヒント

インライン JSON をサポートするコマンドの多くは、ファイル パスとしての入力もサポートしています。これは、シェル固有のテキスト要件を回避するのに役立ちます。

次のステップ

CLI とその完全なコマンド セットを、参照ドキュメント: