Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 25c23b8

Browse files
committedMar 24, 2022
Feedback
1 parent 74a8667 commit 25c23b8

17 files changed

+44
-41
lines changed
 

‎articles/digital-twins/concepts-apis-sdks.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ The following list provides more detail and general guidelines for using the API
114114
* All service functions throw an exception for any return status of 400 or above. Make sure you wrap calls into a `try` section, and catch at least `RequestFailedExceptions`. For more about this type of exception, see its [reference documentation](/dotnet/api/azure.requestfailedexception?view=azure-dotnet&preserve-view=true).
115115
* Most service methods return `Response<T>` or (`Task<Response<T>>` for the asynchronous calls), where `T` is the class of return object for the service call. The [Response](/dotnet/api/azure.response-1?view=azure-dotnet&preserve-view=true) class encapsulates the service return and presents return values in its `Value` field.
116116
* Service methods with paged results return `Pageable<T>` or `AsyncPageable<T>` as results. For more about the `Pageable<T>` class, see its [reference documentation](/dotnet/api/azure.pageable-1?view=azure-dotnet&preserve-view=true); for more about `AsyncPageable<T>`, see its [reference documentation](/dotnet/api/azure.asyncpageable-1?view=azure-dotnet&preserve-view=true).
117-
* You can iterate over paged results using an `await foreach` loop. For more about this process, see the [relevant documentation](/archive/msdn-magazine/2019/november/csharp-iterating-with-async-enumerables-in-csharp-8).
117+
* You can iterate over paged results using an `await foreach` loop. For more about this process, see [Iterating with Async Enumerables in C# 8](/archive/msdn-magazine/2019/november/csharp-iterating-with-async-enumerables-in-csharp-8).
118118
* The underlying SDK is `Azure.Core`. See the [Azure namespace documentation](/dotnet/api/azure?view=azure-dotnet&preserve-view=true) for reference on the SDK infrastructure and types.
119119

120120

‎articles/digital-twins/how-to-set-up-instance-portal.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ This version of this article goes through these steps manually, one by one, usin
4848

4949
Here are the additional options you can configure during setup, using the other tabs in the **Create Resource** process.
5050

51-
* **Networking**: In this tab, you can enable private endpoints with [Azure Private Link](../private-link/private-link-overview.md) to eliminate public network exposure to your instance. For instructions, see [Enable private access with Private Link (preview)](./how-to-enable-private-link.md?tabs=portal#add-a-private-endpoint-during-instance-creation).
51+
* **Networking**: In this tab, you can enable private endpoints with [Azure Private Link](../private-link/private-link-overview.md) to eliminate public network exposure to your instance. For instructions, see [Enable private access with Private Link](./how-to-enable-private-link.md?tabs=portal#add-a-private-endpoint-during-instance-creation).
5252
* **Advanced**: In this tab, you can enable a system-managed identity for your instance that can be used when forwarding events along [event routes](concepts-route-events.md). For more information about using system-managed identities with Azure Digital Twins, see [Security for Azure Digital Twins solutions](concepts-security.md#managed-identity-for-accessing-other-resources).
5353
* **Tags**: In this tab, you can add tags to your instance to help you organize it among your Azure resources. For more about Azure resource tags, see [Tag resources, resource groups, and subscriptions for logical organization](../azure-resource-manager/management/tag-resources.md).
5454

Loading
Binary file not shown.

‎articles/digital-twins/overview.md

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ titleSuffix: Azure Digital Twins
55
description: Overview of Azure Digital Twins, what the service comprises, and how it can be used in a wider cloud solution.
66
author: baanders
77
ms.author: baanders # Microsoft employees only
8-
ms.date: 02/24/2022
8+
ms.date: 03/24/2022
99
ms.topic: overview
1010
ms.service: digital-twins
1111

@@ -65,23 +65,24 @@ You can also extract insights from the live execution environment, using Azure D
6565

6666
To keep the live execution environment of Azure Digital Twins up to date with the real world, you can use [IoT Hub](../iot-hub/about-iot-hub.md) to connect your solution to IoT and IoT Edge devices. These hub-managed devices are represented as part of your twin graph, and provide the data that drives your model.
6767

68-
You can create a new IoT Hub for this purpose with Azure Digital Twins, or connect an existing IoT Hub along with the devices it already manages.
68+
You can create a new IoT Hub for this purpose with Azure Digital Twins, or [connect an existing IoT Hub](how-to-ingest-iot-hub-data.md) along with the devices it already manages.
6969

7070
You can also drive Azure Digital Twins from other data sources, using REST APIs or connectors to other services like [Logic Apps](../logic-apps/logic-apps-overview.md).
7171

7272
### Output data for storage and analytics
7373

74-
The data in your Azure Digital Twins model can be routed to downstream Azure services for more analytics or storage. This functionality is provided through *event routes*, which use [Event Hubs](../event-hubs/event-hubs-about.md), [Event Grid](../event-grid/overview.md), or [Service Bus](../service-bus-messaging/service-bus-messaging-overview.md) to drive your data flows.
74+
The data in your Azure Digital Twins model can be routed to downstream Azure services for more analytics or storage.
7575

76-
Some things you can do with event routes include:
77-
* Sending digital twin data to Azure Data Explorer for querying with the [Azure Digital Twins query plugin for Azure Data Explorer](concepts-data-explorer-plugin.md)
78-
* [Connecting Azure Digital Twins to Time Series Insights](how-to-integrate-time-series-insights.md) to track time series history of each twin
79-
* Aligning a Time Series Model in Time Series Insights with a source in Azure Digital Twins
80-
* Storing Azure Digital Twins data in [Azure Data Lake](../storage/blobs/data-lake-storage-introduction.md)
81-
* Analyzing Azure Digital Twins data with [Azure Synapse Analytics](../synapse-analytics/sql-data-warehouse/sql-data-warehouse-overview-what-is.md), or other Microsoft data analytics tools
82-
* Integrating larger workflows with Logic Apps​
76+
To send digital twin data to other Azure services or ultimately outside of Azure, you can create *event routes*, which utilize [Event Hubs](../event-hubs/event-hubs-about.md), [Event Grid](../event-grid/overview.md), and [Service Bus](../service-bus-messaging/service-bus-messaging-overview.md) to send data through custom flows.
8377

84-
This option is another way that Azure Digital Twins can connect into a larger solution, and support your custom needs for continued work with these insights.
78+
Here are some things you can do with event routes in Azure Digital Twins:
79+
* [Connect Azure Digital Twins to Time Series Insights](how-to-integrate-time-series-insights.md) to track time series history of each twin
80+
* Store Azure Digital Twins data in [Azure Data Lake](../storage/blobs/data-lake-storage-introduction.md)
81+
* Analyze Azure Digital Twins data with [Azure Synapse Analytics](../synapse-analytics/sql-data-warehouse/sql-data-warehouse-overview-what-is.md), or other Microsoft data analytics tools
82+
* Integrate larger workflows with [Logic Apps​](../logic-apps/logic-apps-overview.md)
83+
* Send data to custom applications for flexible and customized actions
84+
85+
Flexible egress of data is another way that Azure Digital Twins can connect into a larger solution, and support your custom needs for continued work with these insights.
8586

8687
## Azure Digital Twins in a solution context
8788

‎articles/digital-twins/quickstart-azure-digital-twins-explorer.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ The rest of this section walks you through these steps.
6161
6262
4. Select **Review + Create** to finish creating your instance.
6363

64-
:::image type="content" source= "media/quickstart-azure-digital-twins-explorer/create-azure-digital-twins-basics.png" alt-text="Screenshot of the Create Resource process for Azure Digital Twins in the Azure portal. The described values are filled in.":::
64+
:::image type="content" source="media/quickstart-azure-digital-twins-explorer/create-azure-digital-twins-basics.png" alt-text="Screenshot of the Create Resource process for Azure Digital Twins in the Azure portal. The described values are filled in.":::
6565

6666
5. You will see a summary page showing the details you've entered. Confirm and create the instance by selecting **Create**.
6767

‎articles/digital-twins/troubleshoot-error-azure-digital-twins-explorer-authentication.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,24 +6,24 @@ ms.service: digital-twins
66
author: baanders
77
ms.author: baanders
88
ms.topic: troubleshooting
9-
ms.date: 02/23/2022
9+
ms.date: 03/24/2022
1010
---
1111

12-
# Troubleshooting Azure Digital Twins Explorer: Authentication error
12+
# Troubleshooting Azure Digital Twins Explorer: Authentication errors
1313

14-
This article describes causes and resolution steps for receiving an 'Authentication failed' error while running the [Azure Digital Twins Explorer](/samples/azure-samples/digital-twins-explorer/digital-twins-explorer/) sample on your local machine.
14+
This article describes causes and resolution steps for receiving authentication errors while running [Azure Digital Twins Explorer](/samples/azure-samples/digital-twins-explorer/digital-twins-explorer/).
1515

1616
## Symptoms
1717

18-
When setting up and running the Azure Digital Twins Explorer application, attempts to authenticate with the app are met with the following error message:
18+
When running Azure Digital Twins Explorer, you encounter the following error message:
1919

20-
:::image type="content" source="media/troubleshoot-error-azure-digital-twins-explorer-authentication/authentication-error.png" alt-text="Screenshot of an authentication failure error message in the Azure Digital Twins Explorer.":::
20+
:::image type="content" source="media/troubleshoot-error-azure-digital-twins-explorer-authentication/permission-error.png" alt-text="Screenshot of an error message in the Azure Digital Twins Explorer, entitled Make sure you have the right permissions.":::
2121

2222
## Causes
2323

2424
### Cause #1
2525

26-
This error might occur if your Azure account does not have the required Azure role-based access control (Azure RBAC) permissions set on your Azure Digital Twins instance. In order to access data in your instance, you must have the *Azure Digital Twins Data Reader* or *Azure Digital Twins Data Owner* role on the instance you are trying to read or manage, respectively.
26+
This error will occur if your Azure account doesn't have the required Azure role-based access control (Azure RBAC) permissions set on your Azure Digital Twins instance. In order to access data in your instance, you must have the *Azure Digital Twins Data Reader* or *Azure Digital Twins Data Owner* role on the instance you are trying to read or manage, respectively.
2727

2828
For more information about security and roles in Azure Digital Twins, see [Security for Azure Digital Twins solutions](concepts-security.md).
2929

@@ -38,7 +38,7 @@ Note that this role is different from...
3838
* the *Owner* role on the entire Azure subscription. *Azure Digital Twins Data Owner* is a role within Azure Digital Twins and is scoped to this individual Azure Digital Twins instance.
3939
* the *Owner* role in Azure Digital Twins. These are two distinct Azure Digital Twins management roles, and *Azure Digital Twins Data Owner* is the role that should be used for management.
4040

41-
If you do not have this role, set it up to resolve the issue.
41+
If you do not have this role, set it up to resolve the issue.
4242

4343
#### Check current setup
4444

@@ -48,7 +48,7 @@ Note that this role is different from...
4848

4949
If you do not have this role assignment, someone with an Owner role in your Azure subscription should run the following command to give your Azure user the appropriate role on the Azure Digital Twins instance.
5050

51-
If you're an Owner on the subscription, you can run this command yourself. If you're not, contact an Owner to run this command on your behalf. The role name is either *Azure Digital Twins Data Owner* for edit access or *Azure Digital Twins Data Reader* for read access.
51+
If you're an Owner on the subscription, you can run this command yourself. If you're not, contact an Owner to run this command on your behalf. The role name is *Azure Digital Twins Data Owner* for edit access, or *Azure Digital Twins Data Reader* for read access.
5252

5353
```azurecli-interactive
5454
az dt role-assignment create --dt-name <your-Azure-Digital-Twins-instance> --assignee "<your-Azure-AD-email>" --role "<role-name>"

‎articles/digital-twins/troubleshoot-known-issues.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ This article provides information about known issues associated with Azure Digit
1616

1717
## "400 Client Error: Bad Request" in Cloud Shell
1818

19-
**Issue description:** Commands in Cloud Shell running at *https://shell.azure.com* may intermittently fail with the error "400 Client Error: Bad Request for url: `http://localhost:50342/oauth2/token`", followed by full stack trace.
19+
**Issue description:** Commands in Cloud Shell running at *https://shell.azure.com* may intermittently fail with the error "400 Client Error: Bad Request for url: `http://localhost:50342/oauth2/token`", followed by full stack trace. Alternatively, you may see error text of "Failed to connect to MSI. Please make sure MSI is configured correctly."
2020

2121
| Does this affect me? | Cause | Resolution |
2222
| --- | --- | --- |

‎articles/digital-twins/tutorial-code.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -182,9 +182,7 @@ To keep the program from crashing, you can add exception code around the model u
182182

183183
:::code language="csharp" source="~/digital-twins-docs-samples/sdks/csharp/fullClientApp.cs" id="Model_try_catch":::
184184

185-
Now, if you run the program with `dotnet run` in your command window now, you'll see that you get an error code back. The output from the model creation code shows this error:
186-
187-
:::image type="content" source= "media/tutorial-code/model-error.png" alt-text="Screenshot of a console showing the program output, which results in an error '409:Service request failed. Status: 409 (Conflict).'.":::
185+
Run the program again with `dotnet run` in your command window. You'll see that you get back more details about the model upload issue, including an error code stating that `ModelIdAlreadyExists`.
188186

189187
From this point forward, the tutorial will wrap all calls to service methods in try/catch handlers.
190188

‎articles/digital-twins/tutorial-command-line-cli.md

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -56,15 +56,17 @@ Otherwise, follow the instructions in [Set up an instance and authentication](ho
5656

5757
After you set up your Azure Digital Twins instance, make a note of the following values that you'll need to connect to the instance later:
5858
* The instance's **host name**
59-
* The **Azure subscription** that you used to create the instance.
60-
61-
You can get both of these values for your instance in the output of the following Azure CLI command:
62-
63-
```azurecli-interactive
64-
az dt show --dt-name <Azure-Digital-Twins-instance-name>
65-
```
66-
67-
:::image type="content" source="media/tutorial-command-line/cli/instance-details.png" alt-text="Screenshot of Cloud Shell browser window showing the output of the az dt show command. The hostName field and subscription ID are highlighted.":::
59+
* The **Azure subscription** that you used to create the instance
60+
61+
>[!TIP]
62+
>If you know the name of your instance, you can use the following CLI command to get the host name and subscription values:
63+
>
64+
>```azurecli-interactive
65+
>az dt show --dt-name <Azure-Digital-Twins-instance-name>
66+
>```
67+
>
68+
>They'll appear in the output like this:
69+
>:::image type="content" source="media/tutorial-command-line/cli/instance-details.png" alt-text="Screenshot of Cloud Shell browser window showing the output of the az dt show command. The hostName field and subscription ID are highlighted.":::
6870
6971
## Model a physical environment with DTDL
7072

‎includes/digital-twins-local-credentials-inner.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,6 @@ ms.author: baanders
99

1010
With `DefaultAzureCredential`, the sample will search for credentials in your local environment, like an Azure sign-in in a local [Azure CLI](/cli/azure/install-azure-cli) or in Visual Studio or Visual Studio Code. For this reason, you should *sign in to Azure locally* through one of these mechanisms to set up credentials for the sample.
1111

12-
If you're using Visual Studio or Visual Studio Code to run the code sample, make sure you're signed in to that editor with the same Azure credentials that you want to use to access your Azure Digital Twins instance.
12+
If you're using Visual Studio or Visual Studio Code to run the code sample, make sure you're [signed in to that editor](/visualstudio/ide/signing-in-to-visual-studio) with the same Azure credentials that you want to use to access your Azure Digital Twins instance.
1313

1414
Otherwise, you can [install the local Azure CLI](/cli/azure/install-azure-cli), start a command prompt on your machine, and run the `az login` command to sign in to your Azure account. After you sign in, when you run your code sample, it should log you in automatically.

‎includes/digital-twins-setup-portal.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,10 @@ In this section, you'll create a new instance of Azure Digital Twins using the [
1414

1515
1. Once in the portal, start by selecting **Create a resource** in the Azure services home page menu.
1616

17-
:::image type="content" source= "../articles/digital-twins/media/how-to-set-up-instance/portal/create-resource.png" alt-text="Screenshot of the Azure portal, highlighting the 'Create a resource' icon from the home page.":::
17+
:::image type="content" source="../articles/digital-twins/media/how-to-set-up-instance/portal/create-resource.png" alt-text="Screenshot of the Azure portal, highlighting the 'Create a resource' icon from the home page.":::
1818

19-
2. Search for *Azure Digital Twins* in the search box, and choose the **Azure Digital Twins** service from the results. Select the **Create** button to create a new instance of the service.
19+
2. Search for *Azure Digital Twins* in the search box, and choose the **Azure Digital Twins** service from the results.
20+
21+
Leave the **Plan** field set to **Azure Digital Twins** and select the **Create** button to start creating a new instance of the service.
2022

21-
:::image type="content" source= "../articles/digital-twins/media/how-to-set-up-instance/portal/create-azure-digital-twins.png" alt-text="Screenshot of the Azure portal, highlighting the 'Create' button from the Azure Digital Twins service page.":::
23+
:::image type="content" source="../articles/digital-twins/media/how-to-set-up-instance/portal/create-azure-digital-twins.png" alt-text="Screenshot of the Azure portal, highlighting the 'Create' button from the Azure Digital Twins service page.":::

‎includes/digital-twins-tutorial-sample-configure.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ Next, set up a sample client application that will interact with your Azure Digi
1313

1414
Navigate on your machine to the file you downloaded earlier from [Azure Digital Twins end-to-end samples](/samples/azure-samples/digital-twins-samples/digital-twins-samples) (and unzip it if you haven't already).
1515

16-
Once inside the folder, navigate into *AdtSampleApp*. Open *AdtE2ESample.sln* in Visual Studio 2019.
16+
Once inside the folder, navigate into *AdtSampleApp*. Open *AdtE2ESample.sln* in Visual Studio.
1717

1818
In Visual Studio, select the *SampleClientApp > appsettings.json* file to open it in the editing window. This will serve as a pre-set JSON file with the necessary configuration variables to run the project.
1919

‎includes/digital-twins-tutorial-sample-prereqs.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ If you don't have an Azure subscription, create a [free account](https://azure.m
1515

1616
### Get required resources
1717

18-
To complete this tutorial, install [Visual Studio 2019](https://visualstudio.microsoft.com/downloads/), version 16.5 or later on your development machine. If you have an older version installed already, you can open the Visual Studio Installer app on your machine and follow the prompts to update your installation.
18+
To complete this tutorial, install the latest version of [Visual Studio](https://visualstudio.microsoft.com/downloads/) on your development machine. If you have an older version installed already, you can open the Visual Studio Installer app on your machine and follow the prompts to update your installation.
1919

2020
The tutorial is driven by an [Azure Digital Twins end-to-end sample project written in C#](/samples/azure-samples/digital-twins-samples/digital-twins-samples). Get the sample project on your machine by navigating to the sample link, and selecting the **Browse code** button underneath the title. This will take you to the GitHub repo for the samples, which you can download as a .zip by selecting the **Code** button followed by **Download ZIP**.
2121

0 commit comments

Comments
 (0)
Please sign in to comment.