Skip to content

Commit bf496a3

Browse files
authored
Merge pull request #226941 from kgremban/feb9-routingconcepts
Review IoT Hub routing concepts
2 parents bccb962 + 2e01bef commit bf496a3

14 files changed

+141
-197
lines changed

articles/iot-central/core/howto-export-data-legacy.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ For Event Hubs and Service Bus, IoT Central exports a new message quickly after
188188
For Blob storage, messages are batched and exported once per minute. The exported files use the same format as the message files exported by [IoT Hub message routing](../../iot-hub/tutorial-routing.md) to blob storage.
189189

190190
> [!NOTE]
191-
> For Blob storage, ensure that your devices are sending messages that have `contentType: application/JSON` and `contentEncoding:utf-8` (or `utf-16`, `utf-32`). See the [IoT Hub documentation](../../iot-hub/iot-hub-devguide-routing-query-syntax.md#message-routing-query-based-on-message-body) for an example.
191+
> For Blob storage, ensure that your devices are sending messages that have `contentType: application/JSON` and `contentEncoding:utf-8` (or `utf-16`, `utf-32`). See the [IoT Hub documentation](../../iot-hub/iot-hub-devguide-routing-query-syntax.md#query-based-on-message-body) for an example.
192192
193193
The device that sent the telemetry is represented by the device ID (see the following sections). To get the names of the devices, export device data and correlate each message by using the **connectionDeviceId** that matches the **deviceId** of the device message.
194194

articles/iot-edge/iot-edge-limits-and-restrictions.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -75,12 +75,12 @@ For more information, see [TPM attestation device requirements](how-to-provision
7575
IoT Edge and IoT Hub routing syntax is almost identical.
7676
Supported query syntax:
7777

78-
* [Message routing query based on message properties](../iot-hub/iot-hub-devguide-routing-query-syntax.md#message-routing-query-based-on-message-properties)
79-
* [Message routing query based on message body](../iot-hub/iot-hub-devguide-routing-query-syntax.md#message-routing-query-based-on-message-body)
78+
* [Message routing query based on message properties](../iot-hub/iot-hub-devguide-routing-query-syntax.md#query-based-on-message-properties)
79+
* [Message routing query based on message body](../iot-hub/iot-hub-devguide-routing-query-syntax.md#query-based-on-message-body)
8080

8181
Not supported query syntax:
8282

83-
* [Message routing query based on device twin](../iot-hub/iot-hub-devguide-routing-query-syntax.md#message-routing-query-based-on-device-twin)
83+
* [Message routing query based on device twin](../iot-hub/iot-hub-devguide-routing-query-syntax.md#query-based-on-device-or-module-twin)
8484

8585
### Restart policies
8686

@@ -108,7 +108,7 @@ Changes made in `config.toml` to `edgeAgent` environment variables like the `hos
108108

109109
### NTLM Authentication
110110

111-
IoT Edge does not currently support network proxies that use NTLM authentication. Users may consider bypassing the proxy by adding the required endpoints to the firewall allow-list.
111+
IoT Edge does not currently support network proxies that use NTLM authentication. Users may consider bypassing the proxy by adding the required endpoints to the firewall allowlist.
112112

113113
## Next steps
114114

articles/iot-hub/.openpublishing.redirection.iot-hub.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,11 @@
2020
"redirect_url": "/azure/iot-develop/quickstart-devkit-mxchip-az3166-iot-hub",
2121
"redirect_document_id": false
2222
},
23+
{
24+
"source_path_from_root": "/articles/iot-hub/iot-hub-devguide-messages-read-custom.md",
25+
"redirect_url": "/azure/iot-hub/iot-hub-devguide-messages-d2c",
26+
"redirect_document_id": false
27+
},
2328
{
2429
"source_path_from_root": "/articles/iot-hub/iot-hub-arduino-iot-devkit-az3166-mqtt-helloworld.md",
2530
"redirect_url": "/azure/iot-develop/quickstart-devkit-mxchip-az3166-iot-hub",

articles/iot-hub/TOC.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -142,9 +142,6 @@
142142
- name: Use message routing to send device-to-cloud messages
143143
displayName: endpoints, built-in endpoint, Azure storage, Service Bus Queues, fallback, route
144144
href: iot-hub-devguide-messages-d2c.md
145-
- name: Use custom endpoints and routing rules for device-to-cloud messages
146-
displayName: message routing, routing query
147-
href: iot-hub-devguide-messages-read-custom.md
148145
- name: Add queries to message routes
149146
href: iot-hub-devguide-routing-query-syntax.md
150147
- name: Compare message and event routing

articles/iot-hub/how-to-routing-portal.md

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -219,10 +219,19 @@ To learn how to create an Azure Cosmos DB resource, see [Create an Azure Cosmos
219219

220220
* **Collection**: Select your Azure Cosmos DB collection.
221221

222-
* **Partition key name** and **Partition key template**: These values are created automatically based on your previous selections. You can leave the auto-generated values or you can change the partition template based on your business logic. For more information about partitioning, see [Partitioning and horizontal scaling in Azure Cosmos DB](../cosmos-db/partitioning-overview.md).
222+
* **Generate a synthetic partition key for messages**: Select **Enable** if needed.
223+
224+
To effectively support high-scale scenarios, you can enable [synthetic partition keys](../cosmos-db/nosql/synthetic-partition-keys.md) for the Cosmos DB endpoint. You can specify the partition key property name in **Partition key name**. The partition key property name is defined at the container level and can't be changed once it has been set.
225+
226+
You can configure the synthetic partition key value by specifying a template in **Partition key template** based on your estimated data volume. The generated partition key value is automatically added to the partition key property for each new Cosmos DB record.
227+
228+
For more information about partitioning, see [Partitioning and horizontal scaling in Azure Cosmos DB](../cosmos-db/partitioning-overview.md).
223229

224230
:::image type="content" source="media/how-to-routing-portal/add-cosmos-db-endpoint-form.png" alt-text="Screenshot that shows details of the Add a Cosmos DB endpoint form." lightbox="media/how-to-routing-portal/add-cosmos-db-endpoint-form.png":::
225231

232+
> [!CAUTION]
233+
> If you're using the system assigned managed identity for authenticating to Cosmos DB, you must use Azure CLI or Azure PowerShell to assign the Cosmos DB Built-in Data Contributor built-in role definition to the identity. Role assignment for Cosmos DB isn't currently supported from the Azure portal. For more information about the various roles, see [Configure role-based access for Azure Cosmos DB](../cosmos-db/how-to-setup-rbac.md). To understand assigning roles via CLI, see [Manage Azure Cosmos DB SQL role resources.](/cli/azure/cosmosdb/sql/role)
234+
226235
1. Select **Save**.
227236

228237
1. In **Message routing**, on the **Routes** tab, confirm that your new route appears.

0 commit comments

Comments
 (0)