Integrowanie usługi Log Analytics i programu Excel

Usługę Azure Monitor Log Analytics i program Microsoft Excel można zintegrować przy użyciu zapytań M i interfejsu API usługi Log Analytics. Ta integracja umożliwia wysyłanie określonej liczby rekordów i MB danych. Te limity są udokumentowane w sekcji Limity obszaru roboczego usługi Log Analytics usługi Azure Monitor w witrynie Azure Portal.

Uwaga

Ponieważ program Excel jest lokalną aplikacją kliencką, ograniczenia sprzętu lokalnego i oprogramowania wpływają na wydajność i możliwość przetwarzania dużych zestawów danych.

Wymagania wstępne

Aby zintegrować usługę Log Analytics i program Excel, potrzebne są następujące elementy:

Wymagane uprawnienia

Musisz mieć Microsoft.OperationalInsights/workspaces/query/*/read uprawnienia do obszarów roboczych usługi Log Analytics, które wykonujesz, zgodnie z wbudowaną rolą czytelnika usługi Log Analytics.

Tworzenie zapytania języka M w usłudze Log Analytics

  1. Utwórz i uruchom zapytanie w usłudze Log Analytics, tak jak zwykle. Nie martw się, jeśli osiągniesz ograniczenie liczby rekordów w interfejsie użytkownika. Zalecamy użycie dat względnych — takich jak funkcja "ago" lub selektor czasu interfejsu użytkownika — dlatego program Excel odświeża odpowiedni zestaw danych.

  2. Eksportuj zapytanie — po zadowoleniu z zapytania i jego wyników wyeksportuj zapytanie do języka M przy użyciu opcji Eksportuj do usługi Power BI (zapytanie M) w menu Eksportuj :

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

Wybranie tej opcji spowoduje pobranie pliku txt zawierającego kod języka M, którego można użyć w programie Excel.

Zapytanie pokazane powyżej eksportuje następujący kod języka M. Oto przykład kodu języka M wyeksportowanego dla zapytania w naszym przykładzie:

/*
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

Połączenie zapytanie do programu Excel

Aby zaimportować zapytanie.

  1. Otwórz program Microsoft Excel.

  2. Na wstążce przejdź do menu Dane . Wybierz pozycję Pobierz dane. Z innych źródeł wybierz puste zapytanie:

    Import from blank in Excel option

  3. W oknie Power query wybierz pozycję Edytor zaawansowany:

    Excel Advanced query editor

  4. Zastąp tekst w edytorze zaawansowanym zapytaniem wyeksportowanym z usługi Log Analytics:

    Creating a blank query

  5. Wybierz pozycję Gotowe, a następnie załaduj i zamknij. Program Excel wykonuje zapytanie przy użyciu interfejsu API usługi Log Analytics, a następnie zestawu wyników.

    Query results in Excel

Uwaga

Jeśli liczba rekordów jest mniejsza niż oczekiwano, liczba wyników może przekroczyć limit 61MiB. Spróbuj użyć project polecenia lub project-away w zapytaniu, aby ograniczyć kolumny do potrzebnej kolumny.

Odświeżanie danych

Dane można odświeżyć bezpośrednio z programu Excel. W grupie Menu Dane na wstążce programu Excel wybierz przycisk Odśwież.

Następne kroki

Aby uzyskać więcej informacji na temat integracji programu Excel z zewnętrznymi źródłami danych, zobacz Importowanie danych z zewnętrznych źródeł danych (Power Query)