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

az iot hub job

注意

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

管理IoT 中心作业(v2)。

命令

名称 说明 类型 Status
az iot hub job cancel

取消IoT 中心作业。

扩展 GA
az iot hub job create

创建并计划执行IoT 中心作业。

扩展 GA
az iot hub job list

列出IoT 中心的历史作业。

扩展 GA
az iot hub job show

显示现有IoT 中心作业的详细信息。

扩展 GA

az iot hub job cancel

取消IoT 中心作业。

az iot hub job cancel --job-id
                      [--auth-type {key, login}]
                      [--hub-name]
                      [--login]
                      [--resource-group]

示例

取消IoT 中心作业。

az iot hub job cancel --hub-name {iothub_name} --job-id {job_id}

必需参数

--job-id

IoT 中心作业 ID。

可选参数

--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 job create

创建并计划执行IoT 中心作业。

计划孪生更新作业时,孪生修补程序是必需参数。 计划设备方法作业时,方法名称和有效负载是必需的参数。 注意:使用过去的自定义开始时间可能会导致操作失败。

az iot hub job create --job-id
                      --job-type {scheduleDeviceMethod, scheduleUpdateTwin}
                      [--auth-type {key, login}]
                      [--duration]
                      [--hub-name]
                      [--interval]
                      [--login]
                      [--mct]
                      [--method-name]
                      [--method-payload]
                      [--method-response-timeout]
                      [--patch]
                      [--query-condition]
                      [--resource-group]
                      [--start]
                      [--ttl]
                      [--wait {false, true}]

示例

创建并计划作业以更新所有设备的孪生标记。

az iot hub job create --job-id {job_id} --job-type scheduleUpdateTwin -n {iothub_name} -q "*" --twin-patch '{"tags": {"deviceType": "Type1, Type2, Type3"}}'

计划作业和阻止“已完成”、“失败”或“已取消”的结果。 指定轮询间隔(以秒为单位)。

az iot hub job create --job-id {job_id} --job-type scheduleUpdateTwin -n {iothub_name} -q "*" --twin-patch '{"tags": {"deviceType": "Type1, Type2, Type3"}}' --wait --poll-interval 30

创建一个作业,以在一部分设备上更新所需的孪生属性,该属性计划在未来任意时间运行。

az iot hub job create --job-id {job_name} --job-type scheduleUpdateTwin -n {iothub_name} --twin-patch '{"properties":{"desired": {"temperatureF": 65}}}' --start-time "2050-01-08T12:19:56.868Z" --query-condition "deviceId IN ['MyDevice1', 'MyDevice2', 'MyDevice3']"

为满足查询条件的一组设备创建和计划作业以调用设备方法。

az iot hub job create --job-id {job_name} --job-type scheduleDeviceMethod -n {iothub_name} --method-name setSyncIntervalSec --method-payload 30 --query-condition "properties.reported.settings.syncIntervalSec != 30"

创建并计划作业以为所有设备调用设备方法。

az iot hub job create --job-id {job_name} --job-type scheduleDeviceMethod -q "*" -n {iothub_name} --method-name setSyncIntervalSec --method-payload '{"version":"1.0"}'

必需参数

--job-id

IoT 中心作业 ID。

--job-type --jt

计划作业的类型。

接受的值: scheduleDeviceMethod, scheduleUpdateTwin

可选参数

--auth-type

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

接受的值: key, login
默认值: key
--duration --poll-duration

如果传入了 --wait 标志,则检查作业状态的总持续时间(以秒为单位)。

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

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

--interval --poll-interval

如果传入了 --wait 标志,将检查作业状态的间隔(以秒为单位)。

默认值: 10
--login -l

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

--mct --method-connect-timeout

在设备连接上等待的最大秒数。

默认值: 30
--method-name --mn

调用的目标方法。

--method-payload --mp

要传递给方法的 Json 有效负载。 必须是文件路径或原始 json。

--method-response-timeout --mrt

等待设备方法结果的最大秒数。

默认值: 30
--patch --twin-patch

所需的孪生体修补程序。 提供文件路径或原始 json。

--query-condition -q

设备查询使设备能够执行作业的条件。 如果作业类型为 scheduleDeviceMethod 或 scheduleUpdateTwin,则为必需。 注意:该服务将前缀“SELECT * FROM devices WHERE”作为输入。

--resource-group -g

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

--start --start-time

作业的计划开始时间格式为 ISO 8601。 如果未提供启动时间,作业将排队等待 asap 执行。 使用过去的自定义开始时间可能会导致操作失败。

--ttl

终止作业前的最大执行时间(以秒为单位)。

默认值: 3600
--wait -w

阻止,直到创建的作业处于已完成、失败或取消状态。 将定期轮询 --poll-interval 指定的时间间隔。

接受的值: false, true
默认值: False
全局参数
--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 job list

列出IoT 中心的历史作业。

az iot hub job list [--auth-type {key, login}]
                    [--hub-name]
                    [--job-status {cancelled, completed, enqueued, failed, queued, running, scheduled, unknown}]
                    [--job-type {export, import, scheduleDeviceMethod, scheduleUpdateTwin}]
                    [--login]
                    [--resource-group]
                    [--top]

示例

列出保留期内的所有存档作业(最多 30 天)。

az iot hub job list --hub-name {iothub_name}

列出所有存档的作业投影特定属性

az iot hub job list --hub-name {iothub_name} --query "[*].[jobId,type,status,startTime,endTime]"

仅列出更新孪生类型作业

az iot hub job list --hub-name {iothub_name} --job-type scheduleDeviceMethod

列出状态为“scheduled”的设备方法作业

az iot hub job list --hub-name {iothub_name} --job-type scheduleDeviceMethod --job-status scheduled

列出状态为“已完成”的设备导出作业

az iot hub job list --hub-name {iothub_name} --job-type export --job-status completed

可选参数

--auth-type

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

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

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

--job-status --js

计划作业的状态。

接受的值: cancelled, completed, enqueued, failed, queued, running, scheduled, unknown
--job-type --jt

计划作业的类型。

接受的值: export, import, scheduleDeviceMethod, scheduleUpdateTwin
--login -l

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

--resource-group -g

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

--top

要返回的最大元素数。 使用 -1 无限制。

全局参数
--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 job show

显示现有IoT 中心作业的详细信息。

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

示例

显示已创建作业的详细信息。

az iot hub job show --hub-name {iothub_name} --job-id {job_id}

必需参数

--job-id

IoT 中心作业 ID。

可选参数

--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 获取完整的调试日志。