Skip to content

Commit ce00849

Browse files
Merge pull request #303539 from PatAltimore/patricka-release-aio-2507
Edit pass
2 parents 73f83c9 + fc08319 commit ce00849

File tree

2 files changed

+28
-28
lines changed

2 files changed

+28
-28
lines changed

articles/iot-operations/connect-to-cloud/howto-configure-opentelemetry-endpoint.md

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
title: Configure OpenTelemetry dataflow endpoints in Azure IoT Operations (preview)
3-
description: Learn how to configure dataflow endpoints for OpenTelemetry destinations to send metrics and logs to observability platforms.
2+
title: Configure OpenTelemetry data flow endpoints in Azure IoT Operations (preview)
3+
description: Learn how to configure data flow endpoints for OpenTelemetry destinations to send metrics and logs to observability platforms.
44
author: PatAltimore
55
ms.author: patricka
66
ms.service: azure-iot-operations
@@ -9,14 +9,14 @@ ms.topic: how-to
99
ms.date: 07/24/2025
1010
ai-usage: ai-assisted
1111

12-
#CustomerIntent: As an operator, I want to understand how to configure dataflow endpoints for OpenTelemetry destinations in Azure IoT Operations so that I can send metrics and logs to observability platforms like Grafana and Azure Monitor.
12+
#CustomerIntent: As an operator, I want to understand how to configure data flow endpoints for OpenTelemetry destinations in Azure IoT Operations so that I can send metrics and logs to observability platforms like Grafana and Azure Monitor.
1313
---
1414

15-
# Configure OpenTelemetry dataflow endpoints (preview)
15+
# Configure OpenTelemetry data flow endpoints (preview)
1616

1717
[!INCLUDE [kubernetes-management-preview-note](../includes/kubernetes-management-preview-note.md)]
1818

19-
OpenTelemetry dataflow endpoints are used to send metrics and logs to OpenTelemetry collectors, which can then forward the data to observability platforms like Grafana dashboards and Azure Monitor. You can configure the endpoint settings, authentication, Transport Layer Security (TLS), and batching options.
19+
OpenTelemetry data flow endpoints are used to send metrics and logs to OpenTelemetry collectors, which can then forward the data to observability platforms like Grafana dashboards and Azure Monitor. You can configure the endpoint settings, authentication, Transport Layer Security (TLS), and batching options.
2020

2121
## Prerequisites
2222

@@ -29,7 +29,7 @@ OpenTelemetry endpoints enable you to export telemetry data from Azure IoT Opera
2929

3030
### Common scenarios
3131

32-
- Device diagnostics: Export temperature, pressure, and other sensor readings as metrics for monitoring device health
32+
- Device diagnostics: Export temperature, pressure, and other sensor readings as metrics to monitor device health
3333
- Factory monitoring: Send production line telemetry to Grafana dashboards for operational visibility
3434
- System observability: Forward application logs and metrics to Azure Monitor for centralized monitoring
3535
- Custom metrics: Add contextual attributes like factory ID or location to metrics for better filtering and analysis
@@ -38,7 +38,7 @@ OpenTelemetry endpoints enable you to export telemetry data from Azure IoT Opera
3838

3939
OpenTelemetry endpoints require data to conform to a specific JSON schema with either a `metrics` array, a `logs` array, or both. Messages that don't conform to this schema are dropped and acknowledged to prevent message loss.
4040

41-
The JSON payload must have this top-level structure:
41+
The JSON payload must use this top-level structure:
4242

4343
```json
4444
{
@@ -98,8 +98,8 @@ Each attribute in the `attributes` array must have:
9898
Each log object in the `logs` array must contain the following fields:
9999

100100
Required fields:
101-
- `value` (string): The log message content
102-
- `level` (string): The log level (see [supported log levels](#supported-log-levels))
101+
- `value` (string): Log message content
102+
- `level` (string): Log level (see [supported log levels](#supported-log-levels))
103103

104104
Optional fields:
105105
- `timestamp` (number): Unix epoch timestamp in nanoseconds when the log was recorded
@@ -136,15 +136,15 @@ Each attribute in the `attributes` array must have:
136136
The following OpenTelemetry metric types are supported:
137137

138138
- Counters: `u64_counter`, `f64_counter` - Monotonically increasing values
139-
- Up/Down Counters: `i64_up_down_counter`, `f64_up_down_counter` - Values that can increase or decrease
139+
- Up/down counters: `i64_up_down_counter`, `f64_up_down_counter` - Values that can increase or decrease
140140
- Gauges: `u64_gauge`, `i64_gauge`, `f64_gauge` - Point-in-time values
141141
- Histograms: `f64_histogram`, `u64_histogram` - Distribution of values
142142

143143
### Supported log levels
144144

145145
The following log levels are supported:
146146
- `trace`
147-
- `debug`
147+
- `debug`
148148
- `info`
149149
- `warn`
150150
- `error`
@@ -156,7 +156,7 @@ You can create an OpenTelemetry dataflow endpoint using Bicep or Kubernetes.
156156

157157
# [Bicep](#tab/bicep)
158158

159-
Create a Bicep `.bicep` file with the following content. Update the settings as needed, and replace the placeholder values like `<AIO_INSTANCE_NAME>` with your own.
159+
Create a Bicep `.bicep` file with the following content. Update the settings as needed, and replace the placeholder values like `<AIO_INSTANCE_NAME>` with your values.
160160

161161
```bicep
162162
param aioInstanceName string = '<AIO_INSTANCE_NAME>'
@@ -202,7 +202,7 @@ resource openTelemetryEndpoint 'Microsoft.IoTOperations/instances/dataflowEndpoi
202202
}
203203
```
204204

205-
Then, deploy via Azure CLI:
205+
Deploy the file by running the following Azure CLI command:
206206

207207
```azurecli
208208
az deployment group create --resource-group <RESOURCE_GROUP> --template-file <FILE>.bicep
@@ -234,7 +234,7 @@ spec:
234234
maxMessages: 100
235235
```
236236
237-
Then apply the manifest file to the Kubernetes cluster:
237+
Apply the manifest file to the Kubernetes cluster:
238238
239239
```bash
240240
kubectl apply -f <FILE>.yaml
@@ -244,11 +244,11 @@ kubectl apply -f <FILE>.yaml
244244

245245
## Configuration options
246246

247-
This section describes the configuration options available for OpenTelemetry dataflow endpoints.
247+
This section describes configuration options for OpenTelemetry data flow endpoints.
248248

249249
### Host
250250

251-
The `host` property specifies the OpenTelemetry collector endpoint URL. This should include the protocol (`http://` or `https://`) and port number.
251+
The `host` property specifies the OpenTelemetry collector endpoint URL. Include the protocol (`http://` or `https://`) and port number.
252252

253253
Examples:
254254
- `https://otel-collector.monitoring.svc.cluster.local:4317`
@@ -257,13 +257,13 @@ Examples:
257257

258258
### Authentication
259259

260-
OpenTelemetry endpoints support several authentication methods to securely connect to collectors.
260+
OpenTelemetry endpoints support several authentication methods to connect securely to collectors.
261261

262262
#### Service Account Token (SAT)
263263

264-
Service Account Token authentication uses Kubernetes service account tokens for authentication with the OpenTelemetry collector.
264+
Service account token (SAT) authentication uses Kubernetes service account tokens to authenticate with the OpenTelemetry collector.
265265

266-
Configuration: Replace `<OTEL_AUDIENCE>` with the appropriate audience value for your OpenTelemetry collector configuration. This value must match the expected audience configured on the collector side.
266+
Replace `<OTEL_AUDIENCE>` with the audience value for your OpenTelemetry collector configuration. This value must match the expected audience on the collector.
267267

268268
# [Bicep](#tab/bicep)
269269

@@ -313,7 +313,7 @@ authentication:
313313
314314
---
315315
316-
Before using X.509 certificate authentication, create a Kubernetes secret with your client certificate:
316+
Before you use X.509 certificate authentication, create a Kubernetes secret with your client certificate:
317317
318318
```bash
319319
kubectl create secret tls <X509_SECRET_NAME> \
@@ -414,8 +414,8 @@ batching:
414414
415415
| Property | Description | Default |
416416
|----------|-------------|---------|
417-
| `latencySeconds` | Maximum time to wait before sending a batch | 60 seconds |
418-
| `maxMessages` | Maximum number of messages in a batch | 100000 messages |
417+
| `latencySeconds` | Maximum time to wait before sending a batch. | 60 seconds |
418+
| `maxMessages` | Maximum number of messages in a batch. | 100000 messages |
419419

420420
## Error handling and troubleshooting
421421

@@ -431,10 +431,10 @@ Common validation errors:
431431

432432
### Delivery guarantees
433433

434-
The OpenTelemetry endpoint provides delivery guarantees to the collector itself, but not to upstream services that the collector may forward data to. Once data reaches the collector, Azure IoT Operations has no visibility into whether it successfully reaches the final destination.
434+
The OpenTelemetry endpoint provides delivery guarantees to the collector itself, but not to upstream services that the collector can forward data to. Once data reaches the collector, Azure IoT Operations doesn't have visibility into whether it reaches the final destination.
435435

436436
## Related content
437437

438-
- [Create a dataflow](howto-create-dataflow.md)
439-
- [Configure dataflow endpoints](howto-configure-dataflow-endpoint.md)
440-
- [Configure MQTT dataflow endpoints](howto-configure-mqtt-endpoint.md)
438+
- [Create a data flow](howto-create-dataflow.md)
439+
- [Configure data flow endpoints](howto-configure-dataflow-endpoint.md)
440+
- [Configure MQTT data flow endpoints](howto-configure-mqtt-endpoint.md)

articles/iot-operations/manage-mqtt-broker/howto-configure-authentication.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -772,7 +772,7 @@ With Azure Device Registry integration enabled:
772772
- Device status is checked upon client authentication and every 10 minutes thereafter.
773773
- Disabled or removed devices are automatically denied access.
774774

775-
Before enabling this feature, you must create corresponding devices in the Azure Device Registry for each client certificate. The device name must match the certificate's Common Name (CN). To create and manage devices in the Azure Device Registry, see:
775+
Before you enable this feature, create a corresponding device in the Azure Device Registry for each client certificate. The device name must match the certificate's Common Name (CN). To create and manage devices in the Azure Device Registry, see:
776776
- [Use the operations experience to manage resources such as assets, devices, and data flows](../discover-manage-assets/howto-manage-assets-devices.md)
777777
- [Understand assets and devices](../discover-manage-assets/concept-assets-devices.md)
778778

@@ -842,7 +842,7 @@ spec:
842842

843843
---
844844

845-
After enabling Azure Device Registry integration, you must create corresponding devices in the Azure Device Registry for each client certificate. The device name must match the certificate's Common Name (CN). If a client attempts to authenticate with a certificate that doesn't have a matching enabled device in the registry, authentication fails.
845+
After you enable Azure Device Registry integration, create a corresponding device in the Azure Device Registry for each client certificate. The device name must match the certificate's Common Name (CN). If a client tries to authenticate with a certificate that doesn't have a matching enabled device in the registry, authentication fails.
846846

847847
### Enable X.509 authentication for a listener port
848848

0 commit comments

Comments
 (0)