Запрос данных в Azure Monitor с использованием Azure Data Explorer
Azure Data Explorer поддерживает межслужбовые запросы между Azure Data Explorer, ресурсом Application Insights (ИИ) и рабочей областью Log Analytics (LA). Вы можете запросить рабочую область Log Analytics или ресурс Application Insights с помощью средств запросов Azure Data Explorer и в межслужбовом запросе. В этой статье показано, как создать межслужбовый запрос и добавить рабочую область Log Analytics или ресурс Application Insights в веб-интерфейс Azure Data Explorer.
Поток запросов между службами в Azure Data Explorer:
Добавление рабочей области Log Analytics или ресурса Application Insights в клиентские средства Azure Data Explorer
Добавьте рабочую область Log Analytics или ресурс Application Insights в клиентские средства Azure Data Explorer, чтобы включить запросы между службами для кластеров.
Убедитесь, что собственный кластер Azure Data Explorer (например , кластер справки ) появится в меню слева перед подключением к рабочей области Log Analytics или ресурсу Application Insights.
В пользовательском интерфейсе Azure Data Explorer нажмите кнопку +Добавить и подключиться.
В окне "Добавление подключения" добавьте URL-адрес и отображаемое имя рабочей области Log Analytics (LA) или ресурса Application Insights (AI).
- Для рабочей области Log Analytics (LA):
https://ade.loganalytics.io/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<workspace-name>
- Для ресурса Application Insights (AI):
https://ade.applicationinsights.io/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.insights/components/<ai-app-name>
Примечание.
Укажите
https://ade.applicationinsights.io/subscriptions/<subscription-id>
, чтобы просмотреть все базы данных в подписке. Этот синтаксис также подходит для кластеров рабочих областей Log Analytics.- Для рабочей области Log Analytics (LA):
Выберите Добавить.
Примечание.
- Есть разные конечные точки для следующих действий:
- Azure для государственных организаций —
adx.monitor.azure.us/
- Azure для Китая —
adx.monitor.azure.cn/
- Если добавить подключение к нескольким рабочим областям Log Analytics или ресурсу Application Insights, присвойте каждому другому имени. В противном случае в левой области они будут отображаться с одним именем.
После установки подключения рабочая область Log Analytics или ресурс Application Insights появится в левой области с собственным кластером Azure Data Explorer.
Примечание.
Запросы, выполняемые из Azure Data Explorer на данных в Azure Monitor, могут быть ограничены ограничениями запросов между ресурсами.
Выполнение запросов
Запросы можно выполнять с помощью клиентских средств, поддерживающих запросы Kusto, например следующих: Kusto Explorer, пользовательский веб-интерфейс Azure Data Explorer, Jupyter Kqlmagic, Flow, Power Query, PowerShell, Lens, REST API.
Примечание.
Запросы между службами используются только для извлечения данных. Дополнительные сведения см. в разделе Поддержка функций.
Совет
- Имя базы данных должно совпадать с именем ресурса, указанного в запросе между службами. В именах учитывается регистр.
- В запросах между службами убедитесь, что имена ресурсов Application Insights и log Analytics правильны.
- Если имена содержат специальные знаки, в запросе между службами они будут заменены кодировкой URL-адресов.
- Если имена содержат символы, которые не соответствуют правилам для именования идентификаторов KQL, они заменяются символом тире -.
Прямой запрос к рабочей области Log Analytics или ресурсам Application Insights из клиентских средств Azure Data Explorer
Запросы можно выполнять в рабочей области Log Analytics или ресурсах Application Insights из клиентских средств Azure Data Explorer.
Убедитесь, что рабочая область выбрана на панели слева.
Выполните приведенный ниже запрос:
Perf | take 10 // Demonstrate cross-service query on the Log Analytics workspace
Перекрестный запрос рабочей области Log Analytics или ресурса Application Insights и собственного кластера Azure Data Explorer
При выполнении запросов между службами кластеров убедитесь, что собственный кластер Azure Data Explorer выбран в левой области. В следующих примерах демонстрируется объединение таблиц кластера Azure Data Explorer (с помощью union
) с рабочей областью Log Analytics.
Выполните следующие запросы:
union StormEvents, cluster('https://ade.loganalytics.io/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<workspace-name>').database('<workspace-name>').Perf
| take 10
let CL1 = 'https://ade.loganalytics.io/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<workspace-name>';
union <ADX table>, cluster(CL1).database(<workspace-name>).<table name>
Совет
Использование оператора join
вместо union может потребовать наличия hint
для его выполнения в собственном кластере Azure Data Explorer.
Объединение данных из кластера Azure Data Explorer в одном арендаторе с ресурсом Azure Monitor в другом
Межтенантные запросы между службами не поддерживаются. Вы выполняете вход в один арендатор для выполнения запроса с двумя ресурсами.
Если ресурс Azure Data Explorer находится в рабочей области "Имя клиента" и Log Analytics находится в имени клиента b, используйте один из следующих двух методов:
Azure Data Explorer позволяет добавлять роли для субъектов в разные арендаторы. Добавьте идентификатор пользователя в имя клиента b в качестве авторизованного пользователя в кластере Azure Data Explorer. Проверьте свойство TrustedExternalTenant в кластере Azure Data Explorer, содержащегося в имени клиента b. Выполните перекрестный запрос полностью в имени клиента-b.
Используйте Lighthouse, чтобы проецировать ресурс Azure Monitor в имя клиента.
Подключение к кластерам Azure Data Explorer из разных арендаторов
Kusto Explorer автоматически выполняет за вас вход в арендатор, которому изначально принадлежит учетная запись пользователя. Чтобы получить доступ к ресурсам в других клиентах с той же учетной записью пользователя, tenantId
необходимо явно указать в строка подключения:Data Source=https://ade.applicationinsights.io/subscriptions/SubscriptionId/resourcegroups/ResourceGroupName;Initial Catalog=NetDefaultDB;AAD Federated Security=True;Authority ID=<TenantId>
Поддержка функций
Запросы между службами Azure Data Explorer поддерживают функции для ресурсов Application Insights и рабочей области Log Analytics. Эта возможность позволяет выполнять межкластерные запросы для указания прямых ссылок на табличную функцию Azure Monitor. Для запросов между службами поддерживаются следующие команды:
.show functions
.show function
[FunctionName].show database
[Имя_базы данных]schema as json
Ограничения
Запросы между службами поддерживают только
.show functions
. Эта возможность позволяет выполнять запросы между кластерами для ссылки непосредственно на табличную функцию Azure Monitor, Azure Data Explorer или Azure Resource Graph. Для запросов между службами поддерживаются следующие команды:.show functions
.show function
[FunctionName].show database
[Имя_базы данных]schema as json
Приватный канал (частные конечные точки) и ограничения IP-адресов не поддерживают запросы между службами.
Дополнительные примеры синтаксиса
При вызове ресурса Application Insights или рабочих областей Log Analytics доступны следующие параметры синтаксиса:
Описание синтаксиса | Ресурс Application Insights | Рабочая область Log Analytics |
---|---|---|
База данных в кластере, которая содержит только определенный ресурс в этой подписке (рекомендуется для межкластерных запросов) | cluster('https://adx.monitor.azure.com/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.insights/components/<ai-app-name>').database('<ai-app-name>') |
cluster('https://adx.monitor.azure.com/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<workspace-name>').database('<workspace-name> ) |
Кластер, содержащий все приложения и рабочие области в этой подписке | cluster('https://adx.monitor.azure.com/subscriptions/<subscription-id>') |
cluster('https://adx.monitor.azure.com/subscriptions/<subscription-id> ) |
Кластер, содержащий все приложения и рабочие области в подписке, которые входят в эту группу ресурсов | cluster('https://adx.monitor.azure.com/subscriptions/<subscription-id>/resourcegroups/<resource-group-name> ) |
cluster('https://adx.monitor.azure.com/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>') |
Кластер, содержащий только определенный ресурс в этой подписке | cluster('https://adx.monitor.azure.com/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.insights/components/<ai-app-name> ) |
cluster('https://adx.monitor.azure.com/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<workspace-name>') |
Для конечных точек в USGov | cluster('https://adx.monitor.azure.us/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<workspace-name>') |
|
Для конечных точек в Китае (21Vianet) | cluster('https://adx.monitor.azure.cn/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<workspace-name>') |