你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

az iot hub configuration

注意

此参考是 Azure CLI(版本 2.37.0 或更高版本)的 azure-iot 扩展的一部分。 该扩展将在首次运行 az iot hub 配置 命令时自动安装。 详细了解扩展。

大规模管理 IoT 自动设备管理配置。

命令

名称 说明 类型 状态
az iot hub configuration create

在目标IoT 中心中创建 IoT 自动设备管理配置。

扩展 GA
az iot hub configuration delete

删除 IoT 设备配置。

扩展 GA
az iot hub configuration list

列出IoT 中心中的 IoT 自动设备管理配置。

扩展 GA
az iot hub configuration show

获取 IoT 自动设备管理配置的详细信息。

扩展 GA
az iot hub configuration show-metric

评估 IoT 设备配置中定义的目标用户或系统指标。

扩展 GA
az iot hub configuration update

更新 IoT 自动设备管理配置的指定属性。

扩展 GA

az iot hub configuration create

在目标IoT 中心中创建 IoT 自动设备管理配置。

配置内容为 json,并且根据设备或模块意向略有不同。

设备配置采用 {“deviceContent”:{...}} 的形式 或 {“content”:{“deviceContent”:{...}}}

模块配置采用 {“moduleContent”:{...}} 的形式 或 {“content”:{“moduleContent”:{...}}}

可以使用用户提供的指标来定义配置,以便进行按需评估。 用户指标为 json,格式为 {“queries”:{...}} 或 {“metrics”:{“queries”:{...}}}。

注意:模块的目标条件必须以“from devices.modules where”开头。

az iot hub configuration create --config-id
                                --content
                                [--auth-type {key, login}]
                                [--cl]
                                [--cmq]
                                [--hub-name]
                                [--lab]
                                [--login]
                                [--metrics]
                                [--pri]
                                [--resource-group]
                                [--target-condition]

示例

创建优先级为 3 的设备配置,该配置在生成 9 中标记设备且环境为“test”时条件适用。

az iot hub configuration create -c {config_name} -n {iothub_name} --content device_content.json --target-condition "tags.building=9 and tags.environment='test'" --priority 3

使用标签创建设备配置,并提供内联用户指标(bash 语法示例)。

az iot hub configuration create -c {config_name} -n {iothub_name} --content device_content.json --target-condition "tags.building=9" --labels '{"key0":"value0", "key1":"value1"}' --priority 10 --metrics '{"metrics": {"queries": {"mymetric": "select deviceId from devices where tags.location='US'"}}}'

使用标签创建模块配置并提供内联用户指标(cmd 语法示例)

az iot hub configuration create -c {config_name} -n {iothub_name} --content module_content.json --target-condition "from devices.modules where tags.building=9" --labels "{\"key0\":\"value0\", \"key1\":\"value1\"}" --metrics "{\"metrics\": {\"queries\": {\"mymetric\": \"select moduleId from devices.modules where tags.location='US'\"}}}"

使用内联内容和用户指标创建模块配置(powershell 语法示例)。

az iot hub configuration create -c {config_name} -n {iothub_name} --content '{\"moduleContent\": {\"properties.desired.chillerWaterSettings\": {\"temperature\": 38, \"pressure\": 78}}}' --target-condition "from devices.modules where tags.building=9" --priority 1 --metrics '{\"metrics\": {\"queries\": {\"mymetric\":\"select moduleId from devices.modules where tags.location=''US''\"}}}'

使用替代输入样式的标签和指标(shell 不可知)创建设备配置。

az iot hub configuration create -c {config_name} -n {iothub_name} --content device_content.json --target-condition "from devices.modules where tags.building=9" --custom-labels key0="value0" key1="value1" --priority 10 --custom-metric-queries mymetric1="select deviceId from devices where tags.location='US'" mymetric2="select *"

必需参数

--config-id -c

目标设备配置名称。 允许小写和以下特殊字符:[-+%_*!']。

--content -k

设备配置内容。 提供文件路径或原始 json。

可选参数

--auth-type

指示操作是应自动派生策略密钥还是使用当前的 Azure AD 会话。 如果身份验证类型为登录,并且提供资源主机名,则除非需要,否则将跳过资源查找。可以使用 < a0/a0> 配置默认值 az configure --defaults iothub-data-auth-type=<auth-type-value>

接受的值: key, login
默认值: key
--cl --custom-labels

--labels 的替代输入样式(空格分隔键=值对),并打算在未来替换它。 格式示例:key1=value1 key2=“this is my value”。

--cmq --custom-metric-queries

用于 --metrics 的替代输入样式(空格分隔键=值对),并打算在未来替换它。 格式示例:metric1=“select deviceId from devices where tags.location='US'” metric2=“select *”。

--hub-name -n

IoT 中心名称或主机名。 如果未提供 --login,则为必需。

--lab --labels

要应用于目标配置的标签映射。 建议使用 --custom-labels 而不是 --labels。格式示例:{“key0”:“value0”, “key1”:“value1”}。

--login -l

此命令支持具有执行操作权限的实体连接字符串。 用于避免通过“az login”进行会话登录。 如果同时提供实体连接字符串和名称,则连接字符串优先。 如果未提供 --hub-name,则为必需。

--metrics -m

设备配置指标定义。 提供文件路径或原始 json。建议使用 --custom-metric-queries 而不是 --metrics。

--pri --priority

在竞争规则(最高获胜)的情况下,设备配置的权重。

默认值: 0
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--target-condition --tc -t

设备或模块配置应用于的目标条件。 没有目标条件的配置将不面向任何设备或模块。 使用以下格式:“tags.environment='test'”。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az iot hub configuration delete

删除 IoT 设备配置。

az iot hub configuration delete --config-id
                                [--auth-type {key, login}]
                                [--etag]
                                [--hub-name]
                                [--login]
                                [--resource-group]

必需参数

--config-id -c

目标设备配置名称。 允许小写和以下特殊字符:[-+%_*!']。

可选参数

--auth-type

指示操作是应自动派生策略密钥还是使用当前的 Azure AD 会话。 如果身份验证类型为登录,并且提供资源主机名,则除非需要,否则将跳过资源查找。可以使用 < a0/a0> 配置默认值 az configure --defaults iothub-data-auth-type=<auth-type-value>

接受的值: key, login
默认值: key
--etag -e

对应于资源最后状态的 Etag 或实体标记。 如果未提供 etag,则使用值“*”。

--hub-name -n

IoT 中心名称或主机名。 如果未提供 --login,则为必需。

--login -l

此命令支持具有执行操作权限的实体连接字符串。 用于避免通过“az login”进行会话登录。 如果同时提供实体连接字符串和名称,则连接字符串优先。 如果未提供 --hub-name,则为必需。

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az iot hub configuration list

列出IoT 中心中的 IoT 自动设备管理配置。

az iot hub configuration list [--auth-type {key, login}]
                              [--hub-name]
                              [--login]
                              [--resource-group]
                              [--top]

可选参数

--auth-type

指示操作是应自动派生策略密钥还是使用当前的 Azure AD 会话。 如果身份验证类型为登录,并且提供资源主机名,则除非需要,否则将跳过资源查找。可以使用 < a0/a0> 配置默认值 az configure --defaults iothub-data-auth-type=<auth-type-value>

接受的值: key, login
默认值: key
--hub-name -n

IoT 中心名称或主机名。 如果未提供 --login,则为必需。

--login -l

此命令支持具有执行操作权限的实体连接字符串。 用于避免通过“az login”进行会话登录。 如果同时提供实体连接字符串和名称,则连接字符串优先。 如果未提供 --hub-name,则为必需。

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--top

要返回的最大配置数。 默认情况下,返回所有配置。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az iot hub configuration show

获取 IoT 自动设备管理配置的详细信息。

az iot hub configuration show --config-id
                              [--auth-type {key, login}]
                              [--hub-name]
                              [--login]
                              [--resource-group]

必需参数

--config-id -c

目标设备配置名称。 允许小写和以下特殊字符:[-+%_*!']。

可选参数

--auth-type

指示操作是应自动派生策略密钥还是使用当前的 Azure AD 会话。 如果身份验证类型为登录,并且提供资源主机名,则除非需要,否则将跳过资源查找。可以使用 < a0/a0> 配置默认值 az configure --defaults iothub-data-auth-type=<auth-type-value>

接受的值: key, login
默认值: key
--hub-name -n

IoT 中心名称或主机名。 如果未提供 --login,则为必需。

--login -l

此命令支持具有执行操作权限的实体连接字符串。 用于避免通过“az login”进行会话登录。 如果同时提供实体连接字符串和名称,则连接字符串优先。 如果未提供 --hub-name,则为必需。

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az iot hub configuration show-metric

评估 IoT 设备配置中定义的目标用户或系统指标。

az iot hub configuration show-metric --config-id
                                     --metric-id
                                     [--auth-type {key, login}]
                                     [--hub-name]
                                     [--login]
                                     [--metric-type {system, user}]
                                     [--resource-group]

示例

评估用户定义的“warningLimit”指标

az iot hub configuration show-metric -m warningLimit -c {configuration_name} -n {iothub_name}

评估系统“appliedCount”指标

az iot hub configuration show-metric --metric-id appliedCount -c {configuration_name} -n {iothub_name} --metric-type system

必需参数

--config-id -c

目标设备配置名称。 允许小写和以下特殊字符:[-+%_*!']。

--metric-id -m

用于评估的目标指标。

可选参数

--auth-type

指示操作是应自动派生策略密钥还是使用当前的 Azure AD 会话。 如果身份验证类型为登录,并且提供资源主机名,则除非需要,否则将跳过资源查找。可以使用 < a0/a0> 配置默认值 az configure --defaults iothub-data-auth-type=<auth-type-value>

接受的值: key, login
默认值: key
--hub-name -n

IoT 中心名称或主机名。 如果未提供 --login,则为必需。

--login -l

此命令支持具有执行操作权限的实体连接字符串。 用于避免通过“az login”进行会话登录。 如果同时提供实体连接字符串和名称,则连接字符串优先。 如果未提供 --hub-name,则为必需。

--metric-type --mt

指示应使用哪个指标集合查找指标。

接受的值: system, user
默认值: user
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az iot hub configuration update

更新 IoT 自动设备管理配置的指定属性。

使用 --set 后跟属性分配来更新配置。

注意:配置内容是不可变的。 可更新的配置属性是“标签”、“指标”、“优先级”和“targetCondition”。

az iot hub configuration update --config-id
                                [--add]
                                [--auth-type {key, login}]
                                [--etag]
                                [--force-string]
                                [--hub-name]
                                [--login]
                                [--remove]
                                [--resource-group]
                                [--set]

示例

更改设备配置的优先级并更新其目标条件

az iot hub configuration update -c {configuration_name} -n {iothub_name} --set priority=10 targetCondition="tags.building=43 and tags.environment='dev'"

必需参数

--config-id -c

目标设备配置名称。 允许小写和以下特殊字符:[-+%_*!']。

可选参数

--add

通过指定路径和键值对将对象添加到对象列表。 示例:--add property.listProperty <key=value, string or JSON string>

默认值: []
--auth-type

指示操作是应自动派生策略密钥还是使用当前的 Azure AD 会话。 如果身份验证类型为登录,并且提供资源主机名,则除非需要,否则将跳过资源查找。可以使用 < a0/a0> 配置默认值 az configure --defaults iothub-data-auth-type=<auth-type-value>

接受的值: key, login
默认值: key
--etag -e

对应于资源最后状态的 Etag 或实体标记。 如果未提供 etag,则使用值“*”。

--force-string

使用“set”或“add”时,保留字符串文本,而不是尝试转换为 JSON。

默认值: False
--hub-name -n

IoT 中心名称或主机名。 如果未提供 --login,则为必需。

--login -l

此命令支持具有执行操作权限的实体连接字符串。 用于避免通过“az login”进行会话登录。 如果同时提供实体连接字符串和名称,则连接字符串优先。 如果未提供 --hub-name,则为必需。

--remove

从列表中删除属性或元素。 示例: --remove property.list <indexToRemove> OR --remove propertyToRemove.

默认值: []
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--set

通过指定要设置的属性路径和值来更新对象。 示例:--set property1.property2=<value>

默认值: []
全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。