Поделиться через


AzureDiagnostics

Хранит журналы ресурсов для служб Azure, использующих режим Диагностика Azure. Журналы ресурсов описывают внутреннюю операцию ресурсов Azure.

журнал ресурсов для каждой службы Azure имеет уникальный набор столбцов. Таблица AzureDiagnostics содержит наиболее типичные столбцы, используемые службами Azure. Если журнал ресурсов содержит столбец, которого еще нет в таблице AzureDiagnostics, то этот столбец добавляется при первом сборе данных. Если достигнуто максимальное число столбцов (500), то данные для дополнительных столбцов добавляются в динамический столбец.

Службы Azure, использующие данные в режиме конкретного ресурса, хранят данные в таблице, относящуюся к этой службе, и не используют таблицу AzureDiagnostics. Смотрите журналы ресурсов Azure для получения информации о различиях. См. Ресурсы, использующие режим диагностики Azure для служб, которые используют диагностику Azure.

Примечание.

Таблица AzureDiagnostics — это настраиваемая таблица журналов, созданная исключительно конвейером Azure Monitor, когда ресурс Azure начинает отправлять журналы в режиме Диагностика Azure. В отличие от других таблиц, таблица AzureDiagnostics не может быть создана с помощью ШАБЛОНА ARM или API таблиц. Следовательно, невозможно изменить значения хранения таблицы по умолчанию перед его созданием.

Столбец ДополнительныеПоля

В отличие от других таблиц, AzureDiagnostics гораздо более уязвим к превышению ограничения на 500 столбцов, введенных для любой таблицы в рабочей области Log Analytics из-за широкого ассортимента ресурсов Azure, способных отправлять данные в эту таблицу. Чтобы гарантировать, что данные не будут потеряны из-за количества активных столбцов, превышающих это ограничение в 500 столбцов, создание столбца AzureDiagnostics обрабатывается по-другому.

Таблица AzureDiagnostics в каждой рабочей области содержит как минимум те же 200 столбцов. Для рабочих областей, созданных до 19 января 2021 года, таблица также содержит все столбцы, которые уже были созданы до этой даты. Когда данные отправляются в столбец, который еще не существует:

  • Если общее количество столбцов в AzureDiagnostics в текущей рабочей области не превышает 500, создается новый столбец так же, как и любая другая таблица.
  • Если общее число столбцов равно или более 500, избыточные данные добавляются в столбец динамического пакета свойств с именем AdditionalFields.

Пример

Чтобы проиллюстрировать это поведение, представьте, что по состоянию на дату развертывания таблица AzureDiagnostics в нашей рабочей области выглядит следующим образом:

Столбец 1 Столбец 2 Столбец 3 ... Столбец 498
abc def 123 ... 456
... ... ... ... ...

Ресурс, который отправляет данные в AzureDiagnostics, а затем добавляет новое измерение в данные, которые они называют NewInfo1. Так как таблица по-прежнему имеет менее 500 столбцов, при первом возникновении события, содержащего данные для этого нового измерения, добавляется новый столбец в таблицу:

Столбец 1 Столбец 2 Столбец 3 ... Столбец 498 НоваяИнформация1_s
abc def 123 ... 456 xyz
... ... ... ... ... ...

Эти новые данные можно вернуть в простом запросе:

AzureDiagnostics | where NewInfo1_s == "xyz"

На более позднюю дату другой ресурс отправляет данные в AzureDiagnostics , который добавляет новые измерения с именем NewInfo2 и NewInfo3. Так как таблица достигла 500 столбцов в этой рабочей области, новые данные попадают в столбец AdditionalFields :

Столбец 1 Столбец 2 Столбец 3 ... Столбец 498 НоваяИнформация1_s ДополнительныеПоля
abc def 123 ... 456 xyz {"NewInfo2":"789","NewInfo3":"qwerty"}
... ... ... ... ... ... ...

Вы по-прежнему можете запрашивать эти данные, но его необходимо извлечь из контейнера свойств с помощью любого из операторов динамических свойств в KQL:

AzureDiagnostics
| where AdditionalFields.NewInfo2 == "789" and AdditionalFields.NewInfo3 == "qwerty"

Советы по использованию столбца AdditionalFields

Хотя следует следовать рекомендациям по запросу, таким как всегда фильтровать сначала по времени, при работе с Дополнительными полями следует учитывать некоторые другие рекомендации.

  • Перед выполнением дальнейших операций необходимо привести тип данных. Например, если у вас есть столбец с именем Perf1Sec_i и свойство в AdditionalFields с именем Perf2Sec, и вы хотите вычислить общее значение, добавив оба значения, можно использовать следующее: AzureDiagnostics | extend TotalPerfSec = Perf1Sec_i + toint(AdditionalFields.Perf2Sec) | ....
  • Используйте операторы where, чтобы уменьшить объем данных до наименьшего возможного, прежде чем писать сложную логику, чтобы значительно повысить производительность. TimeGenerated — это один столбец, который всегда должен быть сокращен до наименьшего возможного окна. В случае AzureDiagnostics дополнительный фильтр всегда должен быть включен в верхней части запроса вокруг типов ресурсов, запрашиваемых с помощью столбца ResourceType .
  • При запросе больших объемов данных иногда эффективнее выполнять фильтрацию в Дополнительных Полях в целом, а не анализировать их. Например, для больших объемов данных AzureDiagnostics | where AdditionalFields has "Perf2Sec" часто эффективнее AzureDiagnostics | where isnotnull(toint(AdditionalFields.Perf2Sec)).

Ресурсы, использующие режим диагностики Azure

Следующие службы используют режим диагностики Azure для записей ресурсов и отправляют данные в таблицу Диагностика Azure. См. журналы ресурсов Azure для получения подробной информации об этой конфигурации.

Примечание.

Все остальные ресурсы отправляют данные в специфичные для ресурсов таблицы.

Название службы тип ресурса
MicrosoftSqlAzureTelemetryv3 Майкрософт.sql/серверы/базы данных
MicrosoftAzureCosmosDB microsoft.documentdb/databaseaccounts
Брандмауэр Azure microsoft.network/azurefirewalls
AzureApplicationGatewayService (Служба шлюзов приложений Azure) microsoft.network/applicationgateways
AKSCustomerData microsoft.containerservice/managedclusters
Azure Front Door (облачный сервис) microsoft.cdn/profiles
LNMAgentService microsoft.network/networksecuritygroups
MicrosoftOrcasBreadthServers microsoft.dbforpostgresql/flexibleservers
servicebus microsoft.eventhub/namespaces
Azure Front Door (облачный сервис) microsoft.network/frontdoors
AzureKeyVault microsoft.keyvault/vaults
AzureDataLake microsoft.datalakestore/accounts
Управление API microsoft.apimanagement/service
MicrosoftSqlAzureTelemetryv3 microsoft.sql/managedinstances
ASAzureRP microsoft.analysisservices/servers
MicrosoftOrcasBreadthServers microsoft.dbformysql/flexibleservers
servicebus microsoft.servicebus/namespaces
AzureIotHub microsoft.devices/iothubs
MicrosoftSqlAzureTelemetryv2 microsoft.dbforpostgresql/servers
MicrosoftSqlAzureTelemetryv2 microsoft.dbformariadb/servers
MicrosoftАвтоматизация microsoft.automation/automationaccounts
Менеджер по трафику microsoft.network/trafficmanagerprofiles
MicrosoftOrcasBreadthServers microsoft.dbforpostgresql/servergroupsv2
AzureSearch microsoft.search/searchservices
AzureHybrid microsoft.network/virtualnetworkgateways
MicrosoftSqlAzureTelemetryv3 microsoft.sql/managedinstances/databases
PBIDedicatedRP microsoft.powerbidedicated/возможности
AzureHybrid microsoft.network/vpngateways
MicrosoftDatafactory microsoft.datafactory/factories
MicrosoftCognitiveServices microsoft.cognitiveservices/accounts
AzureRecoveryServices microsoft.recoveryservices/vaults
AzureBatch microsoft.batch/batchaccounts
AzureHybrid microsoft.network/p2svpngateways
MicrosoftSqlAzureTelemetryv2 microsoft.dbformysql/servers
AzureKeyVault microsoft.keyvault/managedhsms
NetMon (система мониторинга сети) microsoft.network/publicipaddresses
AzureDataLake microsoft.datalakeanalytics/accounts
MicrosoftStreamanalytics microsoft.streamanalytics/streamingjobs
servicebus microsoft.relay/namespaces
AzureIotDps microsoft.devices/provisioningservices
MicrosoftAzureCosmosDB microsoft.documentdb/cassandraclusters
MicrosoftAzureCosmosDB microsoft.documentdb/mongoclusters
AKSCustomerData microsoft.containerservice/fleets
PBIDedicatedRP microsoft.powerbi/tenants/workspaces
Azure Front Door (облачный сервис) microsoft.cdn/cdnwebapplicationfirewallpolicies
AzureHybrid microsoft.network/expressroutecircuits
MicrosoftAzureCosmosDB microsoft.dbforpostgresql/flexibleservers
NetMon (система мониторинга сети) microsoft.network/publicipprefixes (публичные префиксы IP-адресов)
AzureCdn microsoft.cdn/profiles/endpoints

режим Диагностика Azure или режим, зависящий от ресурса

Следующие службы используют режим диагностики Azure или режим, зависящий от ресурса, для журналов ресурсов в зависимости от конфигурации параметров диагностики. При использовании режима, специфичного для ресурса, эти ресурсы не отправляют данные в таблицу AzureDiagnostics. См. журналы ресурсов Azure для получения подробной информации об этой конфигурации.

Название службы тип ресурса
Службы Управление API Microsoft.ApiManagement
Azure Cosmos DB – сервер баз данных Microsoft.DocumentDB/databaseAccounts
Фабрики данных (версии 2) Microsoft.DataFactory
Хранилища служб восстановления (резервное копирование) Microsoft.RecoveryServices/vaults
Брандмауэры Microsoft.Network/azureFirewalls

Столбцы таблицы AzureDiagnostics

Столбец Тип Описание
action_id_s Строка
action_name_s Строка
action_s Строка
ActivityId_g Гид
ДополнительныеПоля
AdHocOrScheduledJob_s Строка
application_name_s Строка
аудйт_схема_версия_d Двойной
среднее_процента_процессора_s Строка
ср_среднее_время_сек Строка
backendHostname_s Строка
Caller_s Строка
callerId_s Строка
IP-адрес звонящего Строка
вызовы_s Строка
Категория Строка
client_ip_s Строка
clientInfo_s Строка
clientIP_s Строка
clientIp_s Строка
clientIpAddress_s Строка
clientPort_d Двойной
code_s Строка
collectionName_s Строка
условия_назначенныйIP_s Строка
диапазонПортовНазначения_conditions_s Строка
conditions_None_s Строка
условия_протоколы_s Строка
условия_sourceIP_s Строка
условия_диапазонИсходныхПортов_s Строка
CorrelationId Строка
счетчик_выполнений_d Двойной
cpu_time_d Двойной
database_name_s Строка
имя_принципала_базы_данных_s Строка
DatabaseName_s Строка
db_id_s Строка
направление_s Строка
dop_d Двойной
продолжительность_d Двойной
длительность_миллисекунды_d Двойной
ПродолжительностьМс BigInt
ElasticPoolName_s Строка
время_окончания_t Дата/время
Окружение_ы Строка
код_ошибки_s Строка
сообщение_об_ошибке_s Строка
уровень ошибки_s Строка
класс_событий_s Строка
событие_s Строка
event_subclass_s Строка
event_time_t Дата/время
EventName_s Строка
тип_выполнения_d Двойной
ИнформацияОИсполнении_ВремяОкончания_t Дата/время
executionInfo_exitCode_d Двойной
executionInfo_startTime_t Дата/время
host_s Строка
httpMethod_s Строка
httpStatus_d Двойной
Код состояния HTTP_d Двойной
httpStatusCode_s Строка
httpVersion_s Строка
id_s Строка
identity_claim_appid_g Гид
identity_claim_ipaddr_s Строка
instanceId_s Строка
время_окончания_интервала_d Двойной
время_начала_интервала_d Двойной
ip_s Строка
is_column_permission_s Строка
isAccessPolicyMatch_b Булев
ДлительностьРаботыВСекундах_с Строка
КодОшибкиВыполнения_с Строка
JobId_g Гид
jobId_s Строка
JobOperation_s Строка
ТипПодтипОперацииРаботы_s Строка
ВремяНачалаРаботы_s Строка
СтатусРаботы_s Строка
JobUniqueId_g Гид
Уровень Строка
используемые_байты_журнала_d Двойной
logical_io_reads_d Двойной
logical_io_writes_d Двойной
ЛогическийСерверИмя_s Строка
macAddress_s Строка
matchedConnections_d Двойной
максимальное время работы ЦП (max_cpu_time_d) Двойной
max_dop_d Двойной
макс_длительность_д Двойной
max_log_bytes_used_d (максимально использованные байты журнала) Двойной
max_logical_io_reads_d Двойной
Максимум_логических_записей_ввода-вывода_d Двойной
max_num_physical_io_reads_d Двойной
max_physical_io_reads_d Двойной
максимальный_запрос_макс_используемая_память_д Двойной
max_rowcount_d Двойной
max_time_s Строка
среднее_время_с Строка
Сообщение Строка
мин_время_с Строка
msg_s Строка
num_physical_io_reads_d Двойной
object_id_d Двойной
object_name_s Строка
Название операции Строка
ВерсияОперации Строка
partitionKey_s Строка
physical_io_reads_d Двойной
plan_id_d Двойной
политика Строка
policyMode_s Строка
основнойIPv4Адрес_с Строка
приоритет_d Двойной
свойства_включеныДляРазвертывания_b Булев
свойства_включеныДляШифрованияДиска_b Булев
свойства_включеноДляРазвертыванияШаблона_b Булев
properties_s Строка
properties_sku_Family_s Строка
properties_sku_Name_s Строка
свойства_идентификаторАрендатора_g Гид
query_hash_s Строка
query_id_d Двойной
максимальный_объем_памяти_запроса_d Двойной
query_plan_hash_s Строка
query_time_d Двойной
querytext_s Строка
полученныеБайты_d Двойной
Регионы Строка
requestCharge_s Строка
requestQuery_s Строка
requestResourceId_s Строка
requestResourceType_s Строка
requestUri_s Строка
зарезервированное_хранилище_мб_с Строка
Ресурс Строка
ресурс_названиеДействия_s Строка
местоположение_ресурса_s Строка
resource_originRunId_s Строка
resource_resourceGroupName_s Строка
resource_runId_s Строка
ресурс_subscriptionId_g Гид
ресурc_имя_триггера_s Строка
resource_workflowId_g Гид
ресурс_имяРабочегоПроцесса_s Строка
ResourceGroup Строка
_ИдентификаторРесурса Строка Уникальный идентификатор ресурса, с которым связана запись.
Поставщик Ресурсов Строка
Поставщик Ресурсов Строка
ТипРесурса Строка
ТипРесурса Строка
response_rows_d (строки_ответа_d) Двойной
resultCode_s Строка
ОписаниеРезультата Строка
ОписаниеРезультата Строка
ОписаниеРезультата_ДочерниеЗадачи_s Строка
ОписаниеРезультата_ОшибкаЗаданий_s Строка
СообщениеРезультата_s Строка
ПодписьРезультата Строка
ТипРезультата Строка
ТипРезультата Строка
АнализКоренныхПричин_s Строка
routingRuleName_s Строка
rowcount_d Двойной
ruleName_s Строка
RunbookName_s Строка
RunOn_s Строка
schema_name_s Строка
Отправленные байты_d Двойной
идентификатор_группы_последовательности_g Гид
номер_последовательности_d Двойной
идентификатор_сервера_основного_пользователя Строка
session_id_d Двойной