Skip to content

Commit 3a6cef2

Browse files
Merge pull request #271538 from PatAltimore/patricka-fresh
Freshness
2 parents 26983a8 + 44e4e6f commit 3a6cef2

7 files changed

+34
-36
lines changed

articles/iot-edge/deploy-confidential-applications.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ author: PatAltimore
55
ms.service: iot-edge
66
services: iot-edge
77
ms.topic: conceptual
8-
ms.date: 01/27/2021
8+
ms.date: 04/08/2024
99
ms.author: patricka
1010
---
1111

@@ -15,7 +15,7 @@ ms.author: patricka
1515

1616
Azure IoT Edge supports confidential applications that run within secure enclaves on the device. Encryption provides security for data while in transit or at rest, but enclaves provide security for data and workloads while in use. IoT Edge supports Open Enclave as a standard for developing confidential applications.
1717

18-
Security has always been an important focus of the Internet of Things (IoT) because often IoT devices are often out in the world rather than secured inside a private facility. This exposure puts devices at risk for tampering and forgery because they are physically accessible to bad actors. IoT Edge devices have even more need for trust and integrity because they allow for sensitive workloads to be run at the edge. Unlike common sensors and actuators, these intelligent edge devices are potentially exposing sensitive workloads that were formerly only run within protected cloud or on-premises environments.
18+
Security is an important focus of the Internet of Things (IoT) because often IoT devices are often out in the world rather than secured inside a private facility. This exposure puts devices at risk for tampering and forgery because they are physically accessible to bad actors. IoT Edge devices have even more need for trust and integrity because they allow for sensitive workloads to be run at the edge. Unlike common sensors and actuators, these intelligent edge devices are potentially exposing sensitive workloads that were formerly only run within protected cloud or on-premises environments.
1919

2020
The [IoT Edge security manager](iot-edge-security-manager.md) addresses one piece of the confidential computing challenge. The security manager uses a hardware security module (HSM) to protect the identity workloads and ongoing processes of an IoT Edge device.
2121

@@ -27,7 +27,7 @@ Confidential applications are encrypted in transit and at rest, and only decrypt
2727

2828
The developer creates the confidential application and packages it as an IoT Edge module. The application is encrypted before being pushed to the container registry. The application remains encrypted throughout the IoT Edge deployment process until the module is started on the IoT Edge device. Once the confidential application is within the device's TEE, it is decrypted and can begin executing.
2929

30-
:::image type="content" source="./media/deploy-confidential-applications/confidential-applications-encrypted.png" alt-text="Diagram that show confidential applications are encrypted within IoT Edge modules until deployed into the secure enclave.":::
30+
:::image type="content" source="./media/deploy-confidential-applications/confidential-applications-encrypted.png" alt-text="Diagram that shows confidential applications are encrypted within IoT Edge modules until deployed into the secure enclave.":::
3131

3232
Confidential applications on IoT Edge are a logical extension of [Azure confidential computing](../confidential-computing/overview.md). Workloads that run within secure enclaves in the cloud can also be deployed to run within secure enclaves at the edge.
3333

@@ -44,7 +44,7 @@ The Open Enclave repository also includes samples to help developers get started
4444

4545
## Hardware
4646

47-
Currently, [TrustBox by Scalys](https://scalys.com/) is the only device supported with manufacturer service agreements for deploying confidential applications as IoT Edge modules. The TrustBox is built on The TrustBox Edge and TrustBox EdgeXL devices both come pre-loaded with the Open Enclave SDK and Azure IoT Edge.
47+
Currently, [TrustBox by Scalys](https://scalys.com/) is the only device supported with manufacturer service agreements for deploying confidential applications as IoT Edge modules. The TrustBox is built on The TrustBox Edge and TrustBox EdgeXL devices both come preloaded with the Open Enclave SDK and Azure IoT Edge.
4848

4949
For more information, see [Getting started with Open Enclave for the Scalys TrustBox](https://aka.ms/scalys-trustbox-edge-get-started).
5050

@@ -54,4 +54,4 @@ When you're ready to develop and deploy your confidential application, the [Micr
5454

5555
## Next steps
5656

57-
Learn how to start developing confidential applications as IoT Edge modules with the [Open Enclave extension for Visual Studio Code](https://github.com/openenclave/openenclave/tree/master/devex/vscode-extension)
57+
Learn how to start developing confidential applications as IoT Edge modules with the [Open Enclave extension for Visual Studio Code](https://github.com/openenclave/openenclave/tree/master/devex/vscode-extension).

articles/iot-edge/how-to-access-built-in-metrics.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,25 @@
11
---
2-
title: Access built-in metrics - Azure IoT Edge
2+
title: Access built-in metrics in Azure IoT Edge
33
description: Remote access to built-in metrics from the IoT Edge runtime components
44
author: PatAltimore
55

66
ms.author: patricka
7-
ms.date: 06/25/2021
7+
ms.date: 04/08/2024
88
ms.topic: conceptual
99
ms.reviewer: veyalla
1010
ms.service: iot-edge
1111
services: iot-edge
1212
---
1313

14-
# Access built-in metrics
14+
# Access built-in metrics in Azure IoT Edge
1515

1616
[!INCLUDE [iot-edge-version-all-supported](includes/iot-edge-version-all-supported.md)]
1717

18-
The IoT Edge runtime components, IoT Edge hub and IoT Edge agent, produce built-in metrics in the [Prometheus exposition format](https://prometheus.io/docs/instrumenting/exposition_formats/). Access these metrics remotely to monitor and understand the health of an IoT Edge device.
18+
The IoT Edge runtime components, IoT Edge hub, and IoT Edge agent, produce built-in metrics in the [Prometheus exposition format](https://prometheus.io/docs/instrumenting/exposition_formats/). Access these metrics remotely to monitor and understand the health of an IoT Edge device.
1919

20-
You can use your own solution to access these metrics. Or, you can use the [metrics-collector module](https://azuremarketplace.microsoft.com/marketplace/apps/microsoft_iot_edge.metrics-collector) which handles collecting the built-in metrics and sending them to Azure Monitor or Azure IoT Hub. For more information, see [Collect and transport metrics](how-to-collect-and-transport-metrics.md).
20+
You can use your own solution to access these metrics. Or, you can use the [metrics-collector module](https://azuremarketplace.microsoft.com/marketplace/apps/microsoft_iot_edge.metrics-collector), which handles collecting the built-in metrics and sending them to Azure Monitor or Azure IoT Hub. For more information, see [Collect and transport metrics](how-to-collect-and-transport-metrics.md).
2121

22-
As of release 1.0.10, metrics are automatically exposed by default on **port 9600** of the **edgeHub** and **edgeAgent** modules (`http://edgeHub:9600/metrics` and `http://edgeAgent:9600/metrics`). They aren't port mapped to the host by default.
22+
Metrics are automatically exposed by default on **port 9600** of the **edgeHub** and **edgeAgent** modules (`http://edgeHub:9600/metrics` and `http://edgeAgent:9600/metrics`). They aren't port mapped to the host by default.
2323

2424
Access metrics from the host by exposing and mapping the metrics port from the module's `createOptions`. The example below maps the default metrics port to port 9601 on the host:
2525

@@ -55,7 +55,7 @@ Metrics contain tags to help identify the nature of the metric being collected.
5555
|-|-|
5656
| iothub | The hub the device is talking to |
5757
| edge_device | The ID of the current device |
58-
| instance_number | A GUID representing the current runtime. On restart, all metrics will be reset. This GUID makes it easier to reconcile restarts. |
58+
| instance_number | A GUID representing the current runtime. On restart, all metrics are reset. This GUID makes it easier to reconcile restarts. |
5959

6060
In the Prometheus exposition format, there are four core metric types: counter, gauge, histogram, and summary. For more information about the different metric types, see the [Prometheus metric types documentation](https://prometheus.io/docs/concepts/metric_types/).
6161

@@ -69,7 +69,7 @@ The **edgeHub** module produces the following metrics:
6969
| `edgehub_messages_received_total` | `route_output` (output that sent message)<br> `id` | Type: counter<br> Total number of messages received from clients |
7070
| `edgehub_messages_sent_total` | `from` (message source)<br> `to` (message destination)<br>`from_route_output`<br> `to_route_input` (message destination input)<br> `priority` (message priority to destination) | Type: counter<br> Total number of messages sent to clients or upstream<br> `to_route_input` is empty when `to` is $upstream |
7171
| `edgehub_reported_properties_total` | `target`(update target)<br> `id` | Type: counter<br> Total reported property updates calls |
72-
| `edgehub_message_size_bytes` | `id`<br> | Type: summary<br> Message size from clients<br> Values may be reported as `NaN` if no new measurements are reported for a certain period of time (currently 10 minutes); for `summary` type, corresponding `_count` and `_sum` counters will be emitted. |
72+
| `edgehub_message_size_bytes` | `id`<br> | Type: summary<br> Message size from clients<br> Values may be reported as `NaN` if no new measurements are reported for a certain period of time (currently 10 minutes); for `summary` type, corresponding `_count` and `_sum` counters are emitted. |
7373
| `edgehub_gettwin_duration_seconds` | `source` <br> `id` | Type: summary<br> Time taken for get twin operations |
7474
| `edgehub_message_send_duration_seconds` | `from`<br> `to`<br> `from_route_output`<br> `to_route_input` | Type: summary<br> Time taken to send a message |
7575
| `edgehub_message_process_duration_seconds` | `from` <br> `to` <br> `priority` | Type: summary<br> Time taken to process a message from the queue |
@@ -92,7 +92,7 @@ The **edgeAgent** module produces the following metrics:
9292
| `edgeAgent_total_time_expected_running_seconds` | `module_name` | Type: gauge<br> The amount of time the module was specified in the deployment |
9393
| `edgeAgent_module_start_total` | `module_name`, `module_version` | Type: counter<br> Number of times edgeAgent asked docker to start the module |
9494
| `edgeAgent_module_stop_total` | `module_name`, `module_version` | Type: counter<br> Number of times edgeAgent asked docker to stop the module |
95-
| `edgeAgent_command_latency_seconds` | `command` | Type: gauge<br> How long it took docker to execute the given command. Possible commands are: create, update, remove, start, stop, restart |
95+
| `edgeAgent_command_latency_seconds` | `command` | Type: gauge<br> How long it took docker to execute the given command. Possible commands are: create, update, remove, start, stop, and restart |
9696
| `edgeAgent_iothub_syncs_total` | | Type: counter<br> Number of times edgeAgent attempted to sync its twin with iotHub, both successful and unsuccessful. This number includes both Agent requesting a twin and Hub notifying of a twin update |
9797
| `edgeAgent_unsuccessful_iothub_syncs_total` | | Type: counter<br> Number of times edgeAgent failed to sync its twin with iotHub. |
9898
| `edgeAgent_deployment_time_seconds` | | Type: counter<br> The amount of time it took to complete a new deployment after receiving a change. |

articles/iot-edge/how-to-continuous-integration-continuous-deployment.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
---
2-
title: Continuous integration and continuous deployment to Azure IoT Edge devices - Azure IoT Edge
2+
title: Continuous integration and continuous deployment to Azure IoT Edge devices
33
description: Set up continuous integration and continuous deployment using YAML - Azure IoT Edge with Azure DevOps, Azure Pipelines
44
author: PatAltimore
55

66
ms.author: patricka
7-
ms.date: 08/20/2019
7+
ms.date: 04/08/2024
88
ms.topic: conceptual
99
ms.service: iot-edge
1010
services: iot-edge
@@ -49,7 +49,7 @@ Unless otherwise specified, the procedures in this article do not explore all th
4949
* A container registry where you can push module images. You can use [Azure Container Registry](../container-registry/index.yml) or a third-party registry.
5050
* An active Azure [IoT hub](../iot-hub/iot-hub-create-through-portal.md) with at least two IoT Edge devices for testing the separate test and production deployment stages. You can follow the quickstart articles to create an IoT Edge device on [Linux](quickstart-linux.md) or [Windows](quickstart.md)
5151

52-
For more information about using Azure Repos, see [Share your code with Visual Studio and Azure Repos](/azure/devops/repos/git/share-your-code-in-git-vs)
52+
For more information about using Azure Repos, see [Share your code with Visual Studio and Azure Repos](/azure/devops/repos/git/share-your-code-in-git-vs).
5353

5454
## Create a build pipeline for continuous integration
5555

@@ -131,7 +131,7 @@ In this section, you create a new build pipeline. You configure the pipeline to
131131

132132
9. Select **Save** from the **Save and run** dropdown in the top right.
133133

134-
10. The trigger for continuous integration is enabled by default for your YAML pipeline. If you wish to edit these settings, select your pipeline and click **Edit** in the top right. Select **More actions** next to the **Run** button in the top right and go to **Triggers**. **Continuous integration** shows as enabled under your pipeline's name. If you wish to see the details for the trigger, check the **Override the YAML continuous integration trigger from here** box.
134+
10. The trigger for continuous integration is enabled by default for your YAML pipeline. If you wish to edit these settings, select your pipeline and select **Edit** in the top right. Select **More actions** next to the **Run** button in the top right and go to **Triggers**. **Continuous integration** shows as enabled under your pipeline's name. If you wish to see the details for the trigger, check the **Override the YAML continuous integration trigger from here** box.
135135

136136
:::image type="content" source="./media/how-to-continuous-integration-continuous-deployment/check-trigger-settings.png" alt-text="Screenshot showing how to review your pipeline's trigger settings from the Triggers menu under More actions.":::
137137

articles/iot-edge/how-to-explore-curated-visualizations.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
---
2-
title: Explore curated visualizations - Azure IoT Edge
2+
title: Explore curated visualizations in Azure IoT Edge
33
description: Use Azure workbooks to visualize and explore IoT Edge built-in metrics
4-
author: veyalla
4+
author: PatAltimore
55

6-
ms.author: veyalla
7-
ms.date: 01/29/2022
6+
ms.author: patricka
7+
ms.date: 04/08/2024
88
ms.topic: conceptual
9-
ms.reviewer: kgremban
9+
ms.reviewer: veyalla
1010
ms.service: iot-edge
1111
services: iot-edge
1212
---
1313

14-
# Explore curated visualizations
14+
# Explore curated visualizations in Azure IoT Edge
1515

1616
[!INCLUDE [iot-edge-version-all-supported](includes/iot-edge-version-all-supported.md)]
1717

@@ -53,7 +53,7 @@ By default, this view shows the health of devices associated with the current Io
5353

5454
Use the **Settings** tab to adjust the various thresholds to categorize the device as Healthy or Unhealthy.
5555

56-
Click the **Details** button to see the device list with a snapshot of aggregated, primary metrics. Click the link in the **Status** column to view the trend of an individual device's health metrics or the device name to view its detailed metrics.
56+
Select the **Details** button to see the device list with a snapshot of aggregated, primary metrics. Select the link in the **Status** column to view the trend of an individual device's health metrics or the device name to view its detailed metrics.
5757

5858
## Device details workbook
5959

@@ -73,7 +73,7 @@ The device details workbook also integrates with the IoT Edge portal-based troub
7373

7474
The **Messaging** view includes three subsections: routing details, a routing graph, and messaging health. Drag and let go on any time chart to adjust the global time range to the selected range.
7575

76-
The **Routing** section shows message flow between sending modules and receiving modules. It presents information such as message count, rate, and number of connected clients. Click on a sender or receiver to drill in further. Clicking a sender shows the latency trend chart experienced by the sender and number of messages it sent. Clicking a receiver shows the queue length trend for the receiver and number of messages it received.
76+
The **Routing** section shows message flow between sending modules and receiving modules. It presents information such as message count, rate, and number of connected clients. Select a sender or receiver to drill in further. Clicking a sender shows the latency trend chart experienced by the sender and number of messages it sent. Clicking a receiver shows the queue length trend for the receiver and number of messages it received.
7777

7878
The **Graph** section shows a visual representation of message flow between modules. Drag and zoom to adjust the graph.
7979

@@ -114,7 +114,7 @@ See the generated alerts from [pre-created alert rules](how-to-create-alerts.md)
114114

115115
:::image type="content" source="./media/how-to-explore-curated-visualizations/how-to-explore-alerts.gif" alt-text="The alerts section of the fleet view workbook." lightbox="./media/how-to-explore-curated-visualizations/how-to-explore-alerts.gif":::
116116

117-
Click on a severity row to see alerts details. The **Alert rule** link takes you to the alert context and the **Device** link opens the detailed metrics workbook. When opened from this view, the device details workbook is automatically adjusted to the time range around when the alert fired.
117+
Select a severity row to see alerts details. The **Alert rule** link takes you to the alert context and the **Device** link opens the detailed metrics workbook. When opened from this view, the device details workbook is automatically adjusted to the time range around when the alert fired.
118118

119119
## Customize workbooks
120120

articles/iot-edge/index.yml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ metadata:
1010
ms.topic: landing-page
1111
author: PatAltimore
1212
ms.author: patricka
13-
ms.date: 05/09/2022
13+
ms.date: 04/08/2024
1414
ms.custom: e2e-hybrid
1515

1616
landingContent:
@@ -72,8 +72,6 @@ landingContent:
7272
url: how-to-provision-single-device-linux-on-windows-symmetric.md
7373
- text: Install the IoT Edge runtime on Windows devices
7474
url: how-to-provision-single-device-linux-on-windows-symmetric.md
75-
- text: Use Visual Studio 2019 to develop and debug modules using EFLOW
76-
url: how-to-visual-studio-develop-module.md
7775
- linkListType: reference
7876
links:
7977
- text: IoT Edge for Linux on Windows open-source repository

0 commit comments

Comments
 (0)