Метрики экспортируются с помощью правил сбора данных (предварительная версия)
Правила сбора данных (DCR) используются для сбора данных мониторинга из ресурсов Azure. Список сценариев сбора данных см. в разделе "Общие сведения о правилах сбора данных". Теперь можно использовать контроллеры домена для сбора и экспорта метрик платформы.
В настоящее время метрики платформы можно собирать с помощью DCR и параметров диагностики. Растущее число ресурсов поддерживает экспорт метрик с помощью контроллеров домена. Список поддерживаемых ресурсов и регионов см. в разделе "Поддерживаемые ресурсы".
Использование контроллера домена для экспорта метрик обеспечивает следующие преимущества по сравнению с параметрами диагностики:
- Конфигурация DCR позволяет экспортировать метрики с измерениями.
- Конфигурация DCR позволяет фильтровать по имени метрик, чтобы экспортировать только необходимые метрики.
- Контроллеры домена являются более гибкими и масштабируемыми по сравнению с параметрами диагностики.
- Завершение задержки для контроллеров домена составляет 3 минуты. Это основное улучшение по сравнению с параметрами диагностики, где задержка экспорта метрик составляет 6–10 минут.
Используйте метрики, экспортируемые с помощью контроллеров домена для непрерывного экспорта данных метрик. Для запроса исторических данных используйте API пакетной службы метрик плоскости данных. Сравнение двух служб см. в статье "Запрос api пакетной службы метрик данных" и "Метрики".
Создайте контроллеры домена для метрик с помощью REST API, Azure CLI или Azure PowerShell. Сведения о создании контроллеров домена для экспорта метрик см. в разделе "Создание правил сбора данных для метрик".
При создании DCR необходимо создать ассоциацию правил сбора данных (DCRA), чтобы связать DCR с ресурсом для отслеживания. Для многих типов ресурсов можно создать один DCR. Сведения о создании DCRA см. в статье "Создание связей правил сбора данных". При использовании портал Azure DCRA создается автоматически.
Примечание.
Одновременно можно использовать контроллеры домена и параметры диагностики. Рекомендуется отключить параметры диагностики для метрик при использовании контроллеров домена, чтобы избежать дублирования сбора данных.
Направления экспорта
Метрики можно экспортировать в одно из следующих направлений на DCR:
Рабочие области Log Analytics.
Экспорт в рабочие области Log Analytics может выполняться в разных регионах. Рабочая область Log Analytics и DCR должны находиться в одном регионе, но отслеживаемые ресурсы могут находиться в любом регионе. Метрики, отправленные в рабочую область log analytics, хранятся вAzureMetricsV2
таблице.Учетные записи хранения Azure.
Учетная запись хранения, DCR и отслеживаемые ресурсы должны находиться в одном регионе.Центрам событий.
Центры событий, DCR и отслеживаемые ресурсы должны находиться в одном регионе.
Пример данных в каждом месте назначения см. в разделе "Экспортированные данные".
Примечание.
Задержка при экспорте метрик составляет около 3 минут. Разрешите до 15 минут, чтобы метрики начали отображаться в назначении после начальной настройки.
Ограничения
Контроллеры домена для экспорта метрик имеют следующие ограничения:
- Для каждого DCR можно указать только один тип назначения.
- С одним ресурсом Azure может быть связано не более 5 контроллеров домена.
- Экспорт метрик с помощью DCR не поддерживает экспорт метрик с почасовой детализацией.
Поддерживаемые ресурсы и регионы
Следующие ресурсы поддерживают экспорт метрик с помощью правил сбора данных:
Тип ресурса | Спецификация потока |
---|---|
Масштабируемые наборы виртуальных машин | Microsoft.compute/virtualmachinescalesets |
Виртуальные машины | Microsoft.compute/virtualmachines |
Кэш Redis | Microsoft.cache/redis |
Центры IOT | Microsoft.devices/iothubs |
Хранилища ключей | Microsoft.keyvault/vaults |
Учетные записи хранения | Microsoft.storage/storageaccounts Microsoft.storage/Storageaccounts/blobservices Microsoft.storage/storageaccounts/fileservices Microsoft.storage/storageaccounts/queueservices Microsoft.storage/storageaccounts/tableservices |
SQL Server | Microsoft.sql/серверы Microsoft.sql/серверы/базы данных |
Operational Insights; | Microsoft.operationalinsights/workspaces |
Службы мультимедиа | Microsoft.media/mediaservices Microsoft.media/mediaservices/streamingendpoints Microsoft.media/mediaservices/liveevents |
Защита данных | Microsoft.dataprotection/backupvaults |
Служба Azure Kubernetes | Microsoft.ContainerService/managedClusters |
Поддерживаемые регионы
Вы можете создать DCR для экспорта метрик в любом регионе, но ресурсы, из которого требуется экспортировать метрики, должны находиться в одном из следующих регионов:
- Восточная Австралия
- Центральная часть США
- CentralUsEuap
- Центрально-южная часть США
- Восточная часть США
- Восточная часть США 2
- Eastus2Euap
- Западная часть США
- Западная часть США 2
- Северная Европа
- Западная Европа
- южная часть Соединенного Королевства
Спецификации DCR
Правила сбора данных определяются в объекте JSON. Следующие свойства необходимы для создания DCR для экспорта метрик.
Свойство | Description |
---|---|
dataSources.platformTelemetry.streams |
Перечисляет типы ресурсов и метрики. Укажите Metrics-Group-All , чтобы собрать все метрики для ресурса или указать отдельные метрики. Формат: <resource type>:Metrics-Group-All | <metric name> Например: Microsoft.Compute/virtualMachines:Percentage CPU |
dataSources.platformTelemetry.name |
Имя источника данных. |
destinations |
Назначение для метрик. Для каждого DCR поддерживается только одно назначение. Допустимые типы назначений: storageAccounts logAnalytics eventHubs |
dataflows.streams |
Список потоков для передачи в место назначения в формате: <resource type>:Metrics-Group-All |<metric name> Например, Microsoft.Compute/virtualMachines:Процент ЦП" |
dataflows.destinations |
Назначение, в которое передаются потоки, как определено в свойстве destinations . |
identity.type |
Тип удостоверения, используемый для DCR. Требуется для назначений учетной записи хранения. Допустимые значения: systemAssigned userAssigned |
kind |
Тип правила сбора данных. Установите значение PlatformTelemetry для экспорта метрик. |
location |
Расположение DCR. |
Примечание.
Для каждого DCR можно указать только один тип назначения.
Формат JSON для метрик экспортирует DCR
Используйте формат в следующем универсальном объекте JSON для создания DCR для экспорта метрик. Удалите нежелательные назначения при копировании примера.
{
"properties": {
"dataSources": {
"platformTelemetry": [
{
"streams": [
// a list of resource types and metrics to collect metrics from
"<resourcetype>:<metric name> | Metrics-Group-All",
"<resourcetype>:<metric name> | Metrics-Group-All"
],
"name": "<data sources name>"
}
]
},
"destinations": {
// Choose a single destination type of either logAnalytics, storageAccounts, or eventHubs
"logAnalytics": [
{
"workspaceResourceId": "workspace Id",
"name": "<destination name>"
}
],
"storageAccounts": [
{
"storageAccountResourceId": "<storage account Id>",
"containerName": "<container name>",
"name": "<destination name>"
}
],
"eventHubs": [
{
"eventHubResourceId": "event hub id",
"name": "<destination name>"
}
], },
"dataFlows": [
{
"streams": [
// a list of resource types and metrics to pass to the destination
"<resourcetype>:<metric name> | Metrics-Group-All",
"<resourcetype>:<metric name> | Metrics-Group-All"
],
"destinations": [
"<destination name>"
]
}
]
},
// identity is required for Storage Account and Event Hubs destinations
"identity": {
"type": "userassigned",
"userAssignedIdentities": {
"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rg-001/providers/Microsoft.ManagedIdentity/userAssignedIdentities/DRCIdentity": {}
}
},
"kind": "PlatformTelemetry",
"location": "eastus"
}
Примечание.
При создании DCR для экспорта метрик с помощью интерфейса командной строки kind
и location
identity
передаются в качестве аргументов и должны быть удалены из объекта JSON.
Удостоверения, назначенные пользователем и системой
Удостоверения, назначенные пользователем и системой, поддерживаются при создании контроллеров домена. Удостоверение требуется для назначений учетной записи хранения и центров событий. Вы можете использовать назначенное системой удостоверение или удостоверение, назначаемое пользователем. Дополнительные сведения см. в статье "Назначение ролей Azure управляемому удостоверению".
Чтобы использовать назначенное системой удостоверение, добавьте identity
объект следующим образом:
"identity": {
"type": "systemAssigned"
},
Чтобы использовать назначенное пользователем удостоверение, добавьте identity
объект следующим образом:
"identity": {
"type": "userassigned",
"userAssignedIdentities": {
"/subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<identity name>": {}
}
}
Фильтрация метрик
При указании метрик для экспорта можно фильтровать метрики по имени или запрашивать все метрики с помощью Metrics-Group-All
. Список поддерживаемых метрик см. в разделе "Поддерживаемые метрики" и категории журналов по типу ресурса.
Чтобы указать несколько метрик из одного типа ресурсов, создайте отдельный элемент потока для каждой метрики.
В следующем примере показано, как фильтровать метрики по имени.
{
"properties": {
"dataSources": {
"platformTelemetry": [
{
"streams": [
"Microsoft.Compute/virtualMachines:Percentage CPU",
"Microsoft.Compute/virtualMachines:Disk Read Bytes",
"Microsoft.Compute/virtualMachines:Inbound Flows",
"Microsoft.Compute/virtualMachineScaleSets:Percentage CPU",
"Microsoft.Cache/redis:Cache Hits"
],
"name": "myPlatformTelemetryDataSource"
}
]
},
"destinations": {
"logAnalytics": [
{
"workspaceResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/arg-001/providers/microsoft.operationalinsights/workspaces/loganalyticsworkspace001",
"name": "destinationName"
}
]
},
"dataFlows": [
{
"streams": [
"Microsoft.Compute/virtualMachines:Percentage CPU",
"Microsoft.Compute/virtualMachines:Disk Read Bytes",
"Microsoft.Compute/virtualMachines:Inbound Flows",
"Microsoft.Compute/virtualMachineScaleSets:Percentage CPU",
"Microsoft.Cache/redis:Cache Hits"
],
"destinations": [
"destinationName"
]
}
]
},
"kind": "PlatformTelemetry",
"location": "eastus"
}
Примеры метрик экспортируют объекты JSON
В следующих примерах показаны примеры объектов JSON DCR для экспорта метрик в каждый тип назначения.
Рабочие области Log Analytics
В следующем примере показано правило сбора данных для метрик, которые отправляют определенные метрики из виртуальных машин, масштабируемых наборов виртуальных машин и всех метрик хранилища ключей в рабочую область Log Analytics:
{
"properties": {
"dataSources": {
"platformTelemetry": [
{
"streams": [
"Microsoft.Compute/virtualMachines:Percentage CPU",
"Microsoft.Compute/virtualMachines:Disk Read Bytes",
"Microsoft.Compute/virtualMachines:Inbound Flows",
"Microsoft.Compute/virtualMachineScaleSets:Available Memory Bytes",
"Microsoft.KeyVault/vaults:Metrics-Group-All"
],
"name": "myPlatformTelemetryDataSource"
}
]
},
"destinations": {
"logAnalytics": [
{
"workspaceResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/rg-001/providers/microsoft.operationalinsights/workspaces/laworkspace001",
"name": "ladestination"
}
]
},
"dataFlows": [
{
"streams": [
"Microsoft.Compute/virtualMachines:Percentage CPU",
"Microsoft.Compute/virtualMachines:Disk Read Bytes",
"Microsoft.Compute/virtualMachines:Inbound Flows",
"Microsoft.Compute/virtualMachineScaleSets:Available Memory Bytes",
"Microsoft.KeyVault/vaults:Metrics-Group-All"
],
"destinations": [
"ladestination"
]
}
]
},
"kind": "PlatformTelemetry",
"location": "centralus"
}
Создание контроллеров домена для экспорта метрик
Создайте контроллеры домена для экспорта метрик с помощью шаблона портал Azure, CLI, PowerShell, REST API или ARM. Дополнительные сведения см. в статье "Создание и изменение правил сбора данных( контроллеров домена) и сопоставлений в Azure Monitor.
Экспортированные данные
В следующих примерах показаны данные, экспортированные в каждое место назначения.
Рабочие области Log Analytics
Данные, экспортированные в рабочую область Log Analytics, хранятся в AzureMetricsV2
таблице в рабочей области Log Analytics в следующем формате:
Column | Type | Описание |
---|---|---|
По средней | real | Среднее значение, собираемое в диапазоне времени. |
_BilledSize | real | Размер записи в байтах |
Count | real | Количество выборок, собранных в течение диапазона времени. |
Измерение | по строкам | Связанное измерение метрики в формате JSON. |
_IsBillable | строка | Указывает, можно ли выставлять счета за прием данных. Если _IsBillable false прием не взимается в учетную запись Azure. |
Максимум | real | Максимальное значение, собираемое в диапазоне времени. |
MetricCategory | строка | Имя категории метрики. |
MetricName | строка | Отображаемое имя метрики. |
MetricResourceType | строка | Тип ресурса Azure, сообщающего метрику. |
Минимум | real | Минимальное значение, собираемое в диапазоне времени. |
_ResourceId | строка | Уникальный идентификатор ресурса, с которым связана запись. |
SourceSystem | строка | Тип агента, на который было собрано событие. Например, OpsManager для агента Windows прямой подключения или Operations Manager Linux для всех агентов Linux или Azure для Диагностика Azure |
_SubscriptionId | строка | Уникальный идентификатор подписки, с которой связана запись |
TenantId | строка | Идентификатор рабочей области Log Analytics |
TimeGenerated | datetime | Метка времени (UTC) при создании записи. |
TimeGrain | строка | Время метрики. |
Итог | real | Сумма всех значений в диапазоне времени. |
Тип | строка | Имя таблицы. |
UnitName | строка | Единица метрики. |
Например:
Учетные записи хранения
В следующем примере показаны данные, экспортированные в учетную запись хранения:
{
"Average": "31.5",
"Count": "2",
"Maximum": "52",
"Minimum": "11",
"Total": "63",
"resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/rg-dcrs/providers/microsoft.keyvault/vaults/dcr-vault",
"time": "2024-08-20T14:13:00.0000000Z",
"unit": "MilliSeconds",
"metricName": "ServiceApiLatency",
"timeGrain": "PT1M",
"dimension": {
"ActivityName": "vaultget",
"ActivityType": "vault",
"StatusCode": "200",
"StatusCodeClass": "2xx"
}
}
Event Hubs
В следующем примере показана метрика, экспортируемая в Центры событий.
{
"Average": "1",
"Count": "1",
"Maximum": "1",
"Minimum": "1",
"Total": "1",
"resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/rg-dcrs/providers/microsoft.keyvault/vaults/dcr-vault",
"time": "2024-08-22T13:43:00.0000000Z",
"unit": "Count",
"metricName": "ServiceApiHit",
"timeGrain": "PT1M",
"dimension": {
"ActivityName": "keycreate",
"ActivityType": "key"
},
"EventProcessedUtcTime": "2024-08-22T13:49:17.1233030Z",
"PartitionId": 0,
"EventEnqueuedUtcTime": "2024-08-22T13:46:04.5570000Z"
}