Интеграция Log Analytics с Excel

Вы можете интегрировать Azure Monitor Log Analytics и Microsoft Excel с помощью запроса M и API Log Analytics. Такая интеграция позволит вам отправлять ограниченное количество записей и мегабайтов данных. Ограничения описаны в статье Ограничения службы Azure Monitor в разделе о портале Azure.

Примечание.

Поскольку Excel является локальным клиентским приложением, существующие ограничения локального оборудования и программного обеспечения влияют на его производительность и возможность обработки больших наборов данных.

Необходимые компоненты

Чтобы интегрировать Log Analytics и Excel, вам потребуется:

Требуемые разрешения

У вас должны быть Microsoft.OperationalInsights/workspaces/query/*/read разрешения на запрашиваемые рабочие области Log Analytics, как указано встроенной ролью Log Analytics Reader, например.

Создание запроса M в Log Analytics

  1. Создайте и выполните запрос в Log Analytics, как обычно. Не беспокойтесь, если будет достигнуто ограничение на количество записей в пользовательском интерфейсе. Мы рекомендуем использовать относительный формат дат, например функцию ago в средстве выбора времени для пользовательского интерфейса, чтобы Excel обновлял нужный набор данных.

  2. Экспорт запроса. Когда вы будете довольны запросом и его результатами, экспортируйте запрос в M с помощью пункта Экспорт в Power BI (запрос M) в меню Экспорт Log Analytics:

    Screenshot of Log Analytics query with the data and export option.

В результате на локальный компьютер будет скачан TXT-файл с кодом M, который можно использовать в Excel.

Представленный выше запрос экспортирует следующий код M. Вот пример кода M, который мы экспортировали для запроса в нашем примере:

/*
The exported Power Query Formula Language (M Language ) can be used with Power Query in Excel
and Power BI Desktop.
For Power BI Desktop follow the instructions below: 
1) Download Power BI Desktop from https://powerbi.microsoft.com/desktop/
2) In Power BI Desktop select: 'Get Data' -> 'Blank Query'->'Advanced Query Editor'
3) Paste the M Language script into the Advanced Query Editor and select 'Done'
*/

let AnalyticsQuery =
let Source = Json.Document(Web.Contents("https://api.loganalytics.io/v1/workspaces/ddcfc599-cae0-48ee-9026-fffffffffffff/query", 
[Query=[#"query"="

Heartbeat 
| summarize dcount(ComputerIP) by bin(TimeGenerated, 1h)    
| render timechart
",#"x-ms-app"="OmsAnalyticsPBI",#"timespan"="P1D",#"prefer"="ai.response-thinning=true"],Timeout=#duration(0,0,4,0)])),
TypeMap = #table(
{ "AnalyticsTypes", "Type" }, 
{ 
{ "string",   Text.Type },
{ "int",      Int32.Type },
{ "long",     Int64.Type },
{ "real",     Double.Type },
{ "timespan", Duration.Type },
{ "datetime", DateTimeZone.Type },
{ "bool",     Logical.Type },
{ "guid",     Text.Type },
{ "dynamic",  Text.Type }
}),
DataTable = Source[tables]{0},
Columns = Table.FromRecords(DataTable[columns]),
ColumnsWithType = Table.Join(Columns, {"type"}, TypeMap , {"AnalyticsTypes"}),
Rows = Table.FromRows(DataTable[rows], Columns[name]), 
Table = Table.TransformColumnTypes(Rows, Table.ToList(ColumnsWithType, (c) => { c{0}, c{3}}))
in
Table
in AnalyticsQuery

Подключение запроса к Excel

Чтобы импортировать запрос, сделайте следующее:

  1. Откройте Microsoft Excel.

  2. На ленте перейдите в меню Данные. Выберите Получение данных. В списке Другие источники выберите Пустой запрос:

    Import from blank in Excel option

  3. В окне редактора Power Query выберите Расширенный редактор.

    Excel Advanced query editor

  4. Замените текст в расширенном редакторе текстом запроса, который вы экспортировали из Log Analytics:

    Creating a blank query

  5. Щелкните Готово и Загрузить и закрыть. Excel выполняет запрос с использованием API Log Analytics и отображает результирующий набор.

    Query results in Excel

Примечание.

Если число записей меньше ожидаемого, возможно, объем результатов превышает ограничение в 61 МиБ. Попробуйте в запросе использовать project или project-away, чтобы отображать только нужные столбцы.

Обновление данных

Вы можете обновить данные непосредственно в Excel. В группе меню Данные на ленте Excel нажмите кнопку Обновить.

Следующие шаги

Дополнительные сведения об интеграции Excel с внешними источниками данных см. в статье Импорт данных из внешних источников (Power Query).