Skip to content

Commit 6ade82e

Browse files
Merge pull request #268279 from bwren/embedded-dce
Embedded DCE
2 parents 5c558fb + 7ac4852 commit 6ade82e

16 files changed

+81
-124
lines changed

articles/azure-monitor/agents/azure-monitor-agent-data-collection-endpoint.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ Data Collection Endpoints public IP addresses are not part of the abovementioned
3535
| Microsoft Azure operated by 21Vianet | Replace '.com' above with '.cn' | Same as above | Same as above | Same as above| Same as above |
3636

3737
>[!NOTE]
38-
> If you use private links on the agent, you must **only** add the [private data collection endpoints (DCEs)](../essentials/data-collection-endpoint-overview.md#components-of-a-data-collection-endpoint). The agent does not use the non-private endpoints listed above when using private links/data collection endpoints.
38+
> If you use private links on the agent, you must **only** add the [private data collection endpoints (DCEs)](../essentials/data-collection-endpoint-overview.md#components-of-a-dce). The agent does not use the non-private endpoints listed above when using private links/data collection endpoints.
3939
> The Azure Monitor Metrics (custom metrics) preview isn't available in Azure Government and Azure operated by 21Vianet clouds.
4040
4141
## Proxy configuration
@@ -265,7 +265,7 @@ New-AzConnectedMachineExtension -Name AzureMonitorLinuxAgent -ExtensionType Azur
265265
1. Add the **configuration endpoint URL** to fetch data collection rules to the allowlist for the gateway
266266
`Add-OMSGatewayAllowedHost -Host global.handler.control.monitor.azure.com`
267267
`Add-OMSGatewayAllowedHost -Host <gateway-server-region-name>.handler.control.monitor.azure.com`.
268-
(If you're using private links on the agent, you must also add the [data collection endpoints](../essentials/data-collection-endpoint-overview.md#components-of-a-data-collection-endpoint).)
268+
(If you're using private links on the agent, you must also add the [data collection endpoints](../essentials/data-collection-endpoint-overview.md#components-of-a-dce).)
269269
1. Add the **data ingestion endpoint URL** to the allowlist for the gateway
270270
`Add-OMSGatewayAllowedHost -Host <log-analytics-workspace-id>.ods.opinsights.azure.com`.
271271
1. Restart the **OMS Gateway** service to apply the changes

articles/azure-monitor/agents/azure-monitor-agent-manage.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,8 @@ The following prerequisites must be met prior to installing Azure Monitor Agent.
6060
- global.handler.control.monitor.azure.com
6161
- `<virtual-machine-region-name>`.handler.control.monitor.azure.com (example: westus.handler.control.monitor.azure.com)
6262
- `<log-analytics-workspace-id>`.ods.opinsights.azure.com (example: 12345a01-b1cd-1234-e1f2-1234567g8h99.ods.opinsights.azure.com)
63-
(If you use private links on the agent, you must also add the [dce endpoints](../essentials/data-collection-endpoint-overview.md#components-of-a-data-collection-endpoint)).
64-
- **Disk Space**: Required disk space can vary greatly depending upon how an agent is utilized or if the agent is unable to communicate with the destinations where it is instructed to send monitoring data. By default the agent requires 10Gb of disk space to run and requires 500MB for agent installation. The following provides guidance for capacity planning:
63+
(If you use private links on the agent, you must also add the [dce endpoints](../essentials/data-collection-endpoint-overview.md#components-of-a-dce)).
64+
- **Disk Space**: Required disk space can vary greatly depending upon how an agent is utilized or if the agent is unable to communicate with the destinations where it is instructed to send monitoring data. By default the agent requires 10Gb of disk space to run. The following provides guidance for capacity planning:
6565

6666
| Purpose | Environment | Path | Suggested Space |
6767
|:---|:---|:---|:---|

articles/azure-monitor/agents/azure-monitor-agent-windows-client.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ Here is a comparison between client installer and VM extension for Azure Monitor
4949
- global.handler.control.monitor.azure.com
5050
- `<virtual-machine-region-name>`.handler.control.monitor.azure.com (example: westus.handler.control.azure.com)
5151
- `<log-analytics-workspace-id>`.ods.opinsights.azure.com (example: 12345a01-b1cd-1234-e1f2-1234567g8h99.ods.opinsights.azure.com)
52-
(If using private links on the agent, you must also add the [data collection endpoints](../essentials/data-collection-endpoint-overview.md#components-of-a-data-collection-endpoint))
52+
(If using private links on the agent, you must also add the [data collection endpoints](../essentials/data-collection-endpoint-overview.md#components-of-a-dce))
5353
6. A data collection rule you want to associate with the devices. If it doesn't exist already, [create a data collection rule](./data-collection-rule-azure-monitor-agent.md#create-a-data-collection-rule). **Do not associate the rule to any resources yet**.
5454
7. Before using any PowerShell cmdlet, ensure cmdlet related PowerShell module is installed and imported.
5555

articles/azure-monitor/agents/gateway.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -205,7 +205,7 @@ To configure the Azure Monitor agent (installed on the gateway server) to use th
205205
2. Add the **configuration endpoint URL** to fetch data collection rules to the allowlist for the gateway
206206
`Add-OMSGatewayAllowedHost -Host global.handler.control.monitor.azure.com`
207207
`Add-OMSGatewayAllowedHost -Host <gateway-server-region-name>.handler.control.monitor.azure.com`
208-
(If using private links on the agent, you must also add the [dce endpoints](../essentials/data-collection-endpoint-overview.md#components-of-a-data-collection-endpoint))
208+
(If using private links on the agent, you must also add the [dce endpoints](../essentials/data-collection-endpoint-overview.md#components-of-a-dce))
209209
3. Add the **data ingestion endpoint URL** to the allowlist for the gateway
210210
`Add-OMSGatewayAllowedHost -Host <log-analytics-workspace-id>.ods.opinsights.azure.com`
211211
3. Restart the **OMS Gateway** service to apply the changes

articles/azure-monitor/essentials/data-collection-endpoint-overview.md

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,19 @@ ms.reviwer: nikeist
1212

1313
# Data collection endpoints in Azure Monitor
1414

15-
A data collection endpoint (DCE) is a connection that the [Logs ingestion API](../logs/logs-ingestion-api-overview.md) uses to send collected data for processing and ingestion into Azure Monitor. [Azure Monitor Agent](../agents/agents-overview.md) also uses data collection endpoints to receive configuration files from Azure Monitor and to send collected log data for processing and ingestion.
15+
A data collection endpoint (DCE) is a connection where data sources send collected data for processing and ingestion into Azure Monitor. This article provides an overview of data collection endpoints and explains how to create and set them up based on your deployment.
1616

17-
This article provides an overview of data collection endpoints and explains how to create and set them up based on your deployment.
17+
## When is a DCE required?
18+
Prior to March 31, 2024, a DCE was required for all data collection scenarios using a DCR that required an endpoint. Any DCR created after this date includes its own endpoints for logs and metrics. The URL for these endpoints can be found in the [`logsIngestion` and `metricsIngestion`](./data-collection-rule-structure.md#endpoints) properties of the DCR. These endpoints can be used instead of a DCE for any direct ingestion scenarios.
1819

19-
## Components of a data collection endpoint
20+
Endpoints cannot be added to an existing DCR, but you can keep using any existing DCRs with existing DCEs. If you want to move to a DCR endpoint, then you must create a new DCR to replace the existing one. A DCR with endpoints can also use a DCE. In this case, you can choose whether to use the DCE or the DCR endpoints for each of the clients that use the DCR.
21+
22+
The following scenarios can currently use DCR endpoints. A DCE required if private link is used.
23+
24+
- [Logs ingestion API](../logs/logs-ingestion-api-overview.md).
25+
26+
27+
## Components of a DCE
2028

2129
A data collection endpoint includes components required to ingest data into Azure Monitor and send configuration files to Azure Monitor Agent.
2230

@@ -25,7 +33,7 @@ A data collection endpoint includes components required to ingest data into Azur
2533
This table describes the components of a data collection endpoint, related regionality considerations, and how to set up the data collection endpoint when you create a data collection rule using the portal:
2634

2735
| Component | Description | Regionality considerations |Data collection rule configuration |
28-
|:---|:---|:---|
36+
|:---|:---|:---|:---|
2937
| Logs ingestion endpoint | The endpoint that ingests logs into the data ingestion pipeline. Azure Monitor transforms the data and sends it to the defined destination Log Analytics workspace and table based on a DCR ID sent with the collected data.<br>Example: `<unique-dce-identifier>.<regionname>-1.ingest`. |Same region as the destination Log Analytics workspace. |Set on the **Basics** tab when you create a data collection rule using the portal. |
3038
| Configuration access endpoint | The endpoint from which Azure Monitor Agent retrieves data collection rules (DCRs).<br>Example: `<unique-dce-identifier>.<regionname>-1.handler.control`. | Same region as the monitored resources. | Set on the **Resources** tab when you create a data collection rule using the portal.|
3139

@@ -121,7 +129,6 @@ The sample data collection endpoint (DCE) below is for virtual machines with Azu
121129

122130
- Data collection endpoints only support Log Analytics workspaces as a destination for collected data. [Custom metrics (preview)](../essentials/metrics-custom-overview.md) collected and uploaded via Azure Monitor Agent aren't currently controlled by DCEs.
123131

124-
- Data collection endpoints are where [Logs ingestion API ingestion limits](../service-limits.md#logs-ingestion-api) are applied.
125132

126133
## Next steps
127134
- [Associate endpoints to machines](../agents/data-collection-rule-azure-monitor-agent.md#create-a-data-collection-rule)

articles/azure-monitor/essentials/data-collection-rule-samples.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: Sample data collection rules (DCRs) in Azure Monitor
33
description: Sample data collection rule for different Azure Monitor data collection scenarios.
44
ms.topic: sample
5-
ms.date: 11/15/2023
5+
ms.date: 03/14/2024
66
ms.custom: references_region
77
ms.reviewer: jeffwo
88

@@ -11,6 +11,9 @@ ms.reviewer: jeffwo
1111
# Sample data collection rules (DCRs) in Azure Monitor
1212
This article includes sample [data collection rules (DCRs)](./data-collection-rule-overview.md) for different scenarios. For descriptions of each of the properties in these DCRs, see [Data collection rule structure](./data-collection-rule-structure.md).
1313

14+
> [!NOTE]
15+
> These samples provide the source JSON of a DCR if you're using an ARM template or REST API to create or modify a DCR. After creation, the DCR will have additional properties as described in [Structure of a data collection rule in Azure Monitor](data-collection-rule-structure.md).
16+
1417
## Azure Monitor agent - events and performance data
1518
The sample [data collection rule](../essentials/data-collection-rule-overview.md) below is for virtual machines with [Azure Monitor agent](../agents/data-collection-rule-azure-monitor-agent.md) and has the following details:
1619

@@ -147,7 +150,6 @@ The sample data collection rule below is used to collect [text logs using Azure
147150
{
148151
"location": "eastus",
149152
"properties": {
150-
"dataCollectionEndpointId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/my-resource-groups/providers/Microsoft.Insights/dataCollectionEndpoints/my-data-collection-endpoint",
151153
"streamDeclarations": {
152154
"Custom-MyLogFileFormat": {
153155
"columns": [
@@ -227,7 +229,6 @@ The sample data collection rule below is used to collect [data from an event hub
227229
{
228230
"location": "eastus",
229231
"properties": {
230-
"dataCollectionEndpointId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/my-resource-groups/providers/Microsoft.Insights/dataCollectionEndpoints/my-data-collection-endpoint",
231232
"streamDeclarations": {
232233
"Custom-MyEventHubStream": {
233234
"columns": [
@@ -285,12 +286,13 @@ The sample [data collection rule](../essentials/data-collection-rule-overview.md
285286
- Sends data to a table called MyTable_CL in a workspace called my-workspace.
286287
- Applies a [transformation](../essentials//data-collection-transformations.md) to the incoming data.
287288

289+
> [!NOTE]
290+
> Logs ingestion API requires the [logsIngestion](../essentials/data-collection-rule-structure.md#endpoints) property which includes the URL of the endpoint. This property is added to the DCR after it's created.
288291
289292
```json
290293
{
291294
"location": "eastus",
292295
"properties": {
293-
"dataCollectionEndpointId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/my-resource-groups/providers/Microsoft.Insights/dataCollectionEndpoints/my-data-collection-endpoint",
294296
"streamDeclarations": {
295297
"Custom-MyTable": {
296298
"columns": [

articles/azure-monitor/essentials/data-collection-rule-structure.md

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Details on the structure of different kinds of data collection rule
44
ms.topic: conceptual
55
author: bwren
66
ms.author: bwren
7-
ms.date: 11/15/2023
7+
ms.date: 03/12/2024
88
ms.reviwer: nikeist
99
---
1010

@@ -14,6 +14,29 @@ ms.reviwer: nikeist
1414
- See [Create and edit data collection rules (DCRs) in Azure Monitor](data-collection-rule-create-edit.md) for details working with the JSON described here.
1515
- See [Sample data collection rules (DCRs) in Azure Monitor](../essentials/data-collection-rule-samples.md) for sample DCRs for different scenarios.
1616

17+
## Properties
18+
Properties at the top level of the DCR.
19+
20+
| Property | Description |
21+
|:---|:---|
22+
| `immutableId` | A unique identifier for the data collection rule. Property and value are automatically created when the DCR is created. |
23+
| `description` | A description of the data collection rule. |
24+
| `dataCollectionEndpointId` | Resource ID of the [data collection endpoint (DCE)](data-collection-endpoint-overview.md) used by the DCR if you provided one. Property not present in DCRs that don't use a DCE. |
25+
26+
27+
## `endpoints`
28+
Contains the URLs of the endpoints for the DCR. This section and its properties are automatically created when the DCR is created.
29+
30+
> [!NOTE]
31+
> These properties weren't created for DCRs created before March 31, 2024. DCRs created before this date required a [data collection endpoint (DCE)](data-collection-endpoint-overview.md) and the `dataCollectionEndpointId` property to be specified. If you want to use these embedded DCEs then you must create a new DCR.
32+
33+
| Property | Description |
34+
|:---|:---|
35+
| `logsIngestion` | URL for ingestion endpoint for log data. |
36+
| `metricsIngestion` | URL for ingestion endpoint for metric data. |
37+
38+
**Scenarios**
39+
- Logs ingestion API
1740

1841
## `dataCollectionEndpointId`
1942
Specifies the [data collection endpoint (DCE)](data-collection-endpoint-overview.md) used by the DCR.

articles/azure-monitor/logs/logs-ingestion-api-overview.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,7 @@ ms.date: 04/15/2024
99
The Logs Ingestion API in Azure Monitor lets you send data to a Log Analytics workspace using either a [REST API call](#rest-api-call) or [client libraries](#client-libraries). The API allows you to send data to [supported Azure tables](#supported-tables) or to [custom tables that you create](../logs/create-custom-table.md#create-a-custom-table). You can also [extend the schema of Azure tables with custom columns](../logs/create-custom-table.md#add-or-delete-a-custom-column) to accept additional data.
1010

1111
## Basic operation
12-
Data can be sent to the Logs Ingestion API from any application that can make a REST API call. This may be a custom application that you create, or it may be an application or agent that understands how to send data to the API.
13-
The application sends data to a [data collection endpoint (DCE)](../essentials/data-collection-endpoint-overview.md), which is a unique connection point for your Azure subscription. It specifies a [data collection rule (DCR)](../essentials/data-collection-rule-overview.md) that includes the target table and workspace and the credentials of an app registration with access to the specified DCR.
12+
Data can be sent to the Logs Ingestion API from any application that can make a REST API call. This may be a custom application that you create, or it may be an application or agent that understands how to send data to the API. It specifies a [data collection rule (DCR)](../essentials/data-collection-rule-overview.md) that includes the target table and workspace and the credentials of an app registration with access to the specified DCR. It sends the data to an endpoint specified by the DCR, or to a [data collection endpoint (DCE)](../essentials/data-collection-endpoint-overview.md) if you're using private link.
1413

1514
The data sent by your application to the API must be formatted in JSON and match the structure expected by the DCR. It doesn't necessarily need to match the structure of the target table because the DCR can include a [transformation](../essentials//data-collection-transformations.md) to convert the data to match the table's structure. You can modify the target table and workspace by modifying the DCR without any change to the API call or source data.
1615

@@ -25,7 +24,7 @@ The following table describes each component in Azure that you must configure be
2524
| Component | Function |
2625
|:---|:---|
2726
| App registration and secret | The application registration is used to authenticate the API call. It must be granted permission to the DCR described below. The API call includes the **Application (client) ID** and **Directory (tenant) ID** of the application and the **Value** of an application secret.<br><br>See [Create a Microsoft Entra application and service principal that can access resources](../../active-directory/develop/howto-create-service-principal-portal.md#register-an-application-with-azure-ad-and-create-a-service-principal) and [Create a new application secret](../../active-directory/develop/howto-create-service-principal-portal.md#option-3-create-a-new-application-secret). |
28-
| Data collection endpoint (DCE) | The DCE provides an endpoint for the application to send to. A single DCE can support multiple DCRs, so you can use an existing DCE if you already have one in the same region as your Log Analytics workspace.<br><br>See [Create a data collection endpoint](../essentials/data-collection-endpoint-overview.md#create-a-data-collection-endpoint). |
27+
| Data collection endpoint (DCE) | The DCE is only required if private link is being used. It provides an endpoint for the application to send to. A single DCE can support multiple DCRs, so you can use an existing DCE if you already have one in the same region as your Log Analytics workspace. If you aren't using private link, then you can use the DCR endpoint.<br><br>See [Create a data collection endpoint](../essentials/data-collection-endpoint-overview.md#create-a-data-collection-endpoint). |
2928
| Table in Log Analytics workspace | The table in the Log Analytics workspace must exist before you can send data to it. You can use one of the [supported Azure tables](#supported-tables) or create a custom table using any of the available methods. If you use the Azure portal to create the table, then the DCR is created for you, including a transformation if it's required. With any other method, you need to create the DCR manually as described in the next section.<br><br>See [Create a custom table](create-custom-table.md#create-a-custom-table). |
3029
| Data collection rule (DCR) | Azure Monitor uses the [Data collection rule (DCR)](../essentials/data-collection-rule-overview.md) to understand the structure of the incoming data and what to do with it. If the structure of the table and the incoming data don't match, the DCR can include a [transformation](../essentials/data-collection-transformations.md) to convert the source data to match the target table. You can also use the transformation to filter source data and perform any other calculations or conversions.<br><br>If you create a custom table using the Azure portal, the DCR and the transformation are created for you based on sample data that you provide. If you use an existing table or create a custom table using another method, then you must manually create the DCR using details in the following section.<br><br>Once your DCR is created, you must grant access to it for the application that you created in the first step. From the **Monitor** menu in the Azure portal, select **Data Collection rules** and then the DCR that you created. Select **Access Control (IAM)** for the DCR and then select **Add role assignment** to add the **Monitoring Metrics Publisher** role. |
3130

7.51 KB
Loading
15.2 KB
Loading

0 commit comments

Comments
 (0)