Kurz: Ingestování dat a dotazování na data monitorování v Azure Data Exploreru
V tomto kurzu se naučíte ingestovat data z diagnostických protokolů a protokolů aktivit do clusteru Azure Data Exploreru bez psaní kódu. Pomocí této jednoduché metody příjmu dat můžete rychle začít dotazovat Azure Data Explorer na analýzu dat.
V tomto kurzu se naučíte:
- Vytvořte tabulky a mapování příjmu dat v databázi Azure Data Exploreru.
- Naformátujte ingestována data pomocí zásad aktualizace.
- Vytvořte centrum událostí a připojte ho k Azure Data Exploreru.
- Streamování dat do centra událostí z diagnostických metrik a protokolů aktivit a protokolů aktivit služby Azure Monitor
- Dotazování přijatých dat pomocí Azure Data Exploreru
Poznámka:
Vytvořte všechny prostředky ve stejném umístění nebo oblasti Azure.
Požadavky
- Předplatné Azure. Vytvořte bezplatný účet Azure.
- Cluster a databáze Azure Data Exploreru. Vytvořte cluster a databázi. V tomto kurzu je název databáze TestDatabase.
Zprostředkovatel dat služby Azure Monitor: Diagnostické metriky a protokoly aktivit
Prohlédněte si a seznamte se s daty poskytovanými diagnostickými metrikami a protokoly aktivit služby Azure Monitor níže. Na základě těchto schémat dat vytvoříte kanál příjmu dat. Všimněte si, že každá událost v protokolu má pole záznamů. Toto pole záznamů bude rozděleno později v tomto kurzu.
Příklady diagnostických metrik a protokolů a protokolů aktivit
Diagnostické metriky a protokoly aktivit Azure jsou generovány službou Azure a poskytují data o provozu této služby.
Příklad diagnostických metrik
Diagnostické metriky se agregují s časovým intervalem 1 minut. Následuje příklad schématu událostí metrik Azure Data Exploreru v době trvání dotazu:
{
"records": [
{
"count": 14,
"total": 0,
"minimum": 0,
"maximum": 0,
"average": 0,
"resourceId": "/SUBSCRIPTIONS/<subscriptionID>/RESOURCEGROUPS/<resource-group>/PROVIDERS/MICROSOFT.KUSTO/CLUSTERS/<cluster-name>",
"time": "2018-12-20T17:00:00.0000000Z",
"metricName": "QueryDuration",
"timeGrain": "PT1M"
},
{
"count": 12,
"total": 0,
"minimum": 0,
"maximum": 0,
"average": 0,
"resourceId": "/SUBSCRIPTIONS/<subscriptionID>/RESOURCEGROUPS/<resource-group>/PROVIDERS/MICROSOFT.KUSTO/CLUSTERS/<cluster-name>",
"time": "2018-12-21T17:00:00.0000000Z",
"metricName": "QueryDuration",
"timeGrain": "PT1M"
}
]
}
Nastavení kanálu příjmu dat v Azure Data Exploreru
Nastavení kanálu Azure Data Exploreru zahrnuje několik kroků, jako je vytvoření tabulky a příjem dat. Můžete také manipulovat s daty, mapovat je a aktualizovat.
Připojení k webovému uživatelskému rozhraní Azure Data Exploreru
V databázi TestDatabase Azure Data Exploreru vyberte Dotaz a otevřete webové uživatelské rozhraní Azure Data Exploreru.
Vytvoření cílových tabulek
Struktura protokolů služby Azure Monitor není tabulková. S daty budete manipulovat a každou událost rozbalíte na jeden nebo více záznamů. Nezpracovaná data se budou ingestovat do zprostředkující tabulky s názvem ActivityLogsRawRecords pro protokoly aktivit a diagnostické záznamy DiagnosticRawRecords pro diagnostické metriky a protokoly . V té době budou data manipulována a rozšířena. Pomocí zásad aktualizace se rozšířená data pak ingestují do tabulky ActivityLogs pro protokoly aktivit, diagnostické metriky pro diagnostické metriky a diagnostické protokoly diagnostických protokolů. To znamená, že budete muset vytvořit dvě samostatné tabulky pro příjem protokolů aktivit a tři samostatné tabulky pro ingestování diagnostických metrik a protokolů.
Pomocí webového uživatelského rozhraní Azure Data Exploreru vytvořte cílové tabulky v databázi Azure Data Exploreru.
Vytvoření tabulek pro diagnostické metriky
V databázi TestDatabase vytvořte tabulku s názvem DiagnosticMetrics pro ukládání záznamů diagnostických metrik. Použijte následující
.create table
příkaz pro správu:.create table DiagnosticMetrics (Timestamp:datetime, ResourceId:string, MetricName:string, Count:int, Total:double, Minimum:double, Maximum:double, Average:double, TimeGrain:string)
Vyberte Spustit a vytvořte tabulku.
Pomocí následujícího dotazu vytvořte zprostředkující tabulku dat s názvem DiagnosticRawRecords v databázi TestDatabase . Vyberte Spustit a vytvořte tabulku.
.create table DiagnosticRawRecords (Records:dynamic)
Nastavte zásady nulového uchovávání informací pro zprostředkující tabulku:
.alter-merge table DiagnosticRawRecords policy retention softdelete = 0d
Vytváření mapování tabulek
Vzhledem k tomu, že formát dat je json
, je vyžadováno mapování dat. Mapování json
mapuje každou cestu JSON na název sloupce tabulky. Cesty JSON, které obsahují speciální znaky, by měly být uchycené jako ['Název vlastnosti']. Další informace najdete v syntaxi JSONPath.
Mapování diagnostických metrik a protokolů na tabulku
Pokud chcete namapovat diagnostickou metriku a data protokolu na tabulku, použijte následující dotaz:
.create table DiagnosticRawRecords ingestion json mapping 'DiagnosticRawRecordsMapping' '[{"column":"Records","Properties":{"path":"$.records"}}]'
Vytvoření zásad aktualizace pro metriky a data protokolu
Vytvoření zásad aktualizace dat pro diagnostické metriky
Vytvořte funkci , která rozšiřuje kolekci diagnostických záznamů metrik, aby každá hodnota v kolekci dostala samostatný řádek.
mv-expand
Použijte operátor:.create function DiagnosticMetricsExpand() { DiagnosticRawRecords | mv-expand events = Records | where isnotempty(events.metricName) | project Timestamp = todatetime(events['time']), ResourceId = tostring(events.resourceId), MetricName = tostring(events.metricName), Count = toint(events['count']), Total = todouble(events.total), Minimum = todouble(events.minimum), Maximum = todouble(events.maximum), Average = todouble(events.average), TimeGrain = tostring(events.timeGrain) }
Přidejte zásadu aktualizace do cílové tabulky. Tato zásada automaticky spustí dotaz na všechna nově ingestované data v tabulce zprostředkujících dat DiagnosticRawRecords a ingestuje výsledky do tabulky DiagnosticMetrics :
.alter table DiagnosticMetrics policy update @'[{"Source": "DiagnosticRawRecords", "Query": "DiagnosticMetricsExpand()", "IsEnabled": "True", "IsTransactional": true}]'
Vytvoření oboru názvů služby Azure Event Hubs
Nastavení diagnostiky Azure umožňuje exportovat metriky a protokoly do účtu úložiště nebo do centra událostí. V tomto kurzu budeme směrovat metriky a protokoly prostřednictvím centra událostí. V následujících krocích vytvoříte obor názvů centra událostí a centrum událostí pro diagnostické metriky a protokoly. Azure Monitor vytvoří pro protokoly aktivit přehledy centra událostí – operational-logs .
Vytvořte centrum událostí pomocí šablony Azure Resource Manageru na webu Azure Portal. Pokud chcete postupovat podle zbývajících kroků v tomto článku, klikněte pravým tlačítkem na tlačítko Nasadit do Azure a pak vyberte Otevřít v novém okně. Tlačítko Nasadit do Azure vás přejde na web Azure Portal.
Vytvořte obor názvů služby Event Hubs a centrum událostí pro diagnostické protokoly. Zjistěte, jak vytvořit obor názvů služby Event Hubs.
Do formuláře zadejte následující informace. Pro všechna nastavení, která nejsou uvedená v následující tabulce, použijte výchozí hodnoty.
Nastavení Navrhovaná hodnota Popis Předplatné Vaše předplatné Vyberte předplatné Azure, které chcete použít pro svoje centrum událostí. Skupina prostředků test-resource-group Vytvoříte novou skupinu prostředků. Místo Vyberte oblast, která nejlépe vyhovuje vašim potřebám. Vytvořte obor názvů centra událostí ve stejném umístění jako jiné prostředky. Název oboru názvů AzureMonitoringData Zvolte jedinečný název, který identifikuje váš obor názvů. Název centra událostí DiagnosticData Centrum událostí se nachází v rámci oboru názvů, který poskytuje jedinečný kontejner oboru. Název skupiny příjemců adxpipeline Vytvořte název skupiny příjemců. Skupiny uživatelů umožňují, aby měla každá z aplikací samostatné zobrazení streamu událostí.
Připojení metrik a protokolů služby Azure Monitor k centru událostí
Teď potřebujete připojit diagnostické metriky a protokoly a protokoly aktivit k centru událostí.
Připojení diagnostických metrik a protokolů k centru událostí
Vyberte prostředek, ze kterého chcete exportovat metriky. Několik typů prostředků podporuje export diagnostických dat, včetně oboru názvů centra událostí, služby Azure Key Vault, Azure IoT Hubu a clusterů Azure Data Exploreru. V tomto kurzu jako prostředek použijeme cluster Azure Data Exploreru. Zkontrolujeme metriky výkonu dotazů a protokoly výsledků příjmu dat.
Na webu Azure Portal vyberte svůj cluster Kusto.
Vyberte Nastavení diagnostiky a pak vyberte odkaz Zapnout diagnostiku .
Otevře se podokno Nastavení diagnostiky. Postupujte následovně:
Zadejte data diagnostického protokolu název ADXExportedData.
V části LOG zaškrtněte políčka SucceededIngestion i FailedIngestion.
V části Metrika zaškrtněte políčko Výkon dotazu.
Zaškrtněte políčko Stream do centra událostí.
Vyberte Konfigurovat.
V podokně Vybrat centrum událostí nakonfigurujte, jak exportovat data z diagnostických protokolů do centra událostí, které jste vytvořili:
- V seznamu vybrat obor názvů centra událostí vyberte AzureMonitoringData.
- V seznamu vybrat název centra událostí vyberte DiagnosticData.
- V seznamu vybrat název zásady centra událostí vyberte RootManagerSharedAccessKey.
- Vyberte OK.
Zvolte Uložit.
Zobrazení toků dat do centra událostí
Počkejte několik minut, než se připojení definuje, a export protokolu aktivit do centra událostí se dokončí. Přejděte do oboru názvů služby Event Hubs a podívejte se na centra událostí, které jste vytvořili.
Podívejte se na tok dat do centra událostí:
Připojení centra událostí k Azure Data Exploreru
Teď potřebujete vytvořit datová připojení pro diagnostické metriky a protokoly aktivit.
Vytvoření datového připojení pro diagnostické metriky a protokoly aktivit
V clusteru Azure Data Exploreru s názvem Kustodocs vyberte Databáze v nabídce vlevo.
V okně Databáze vyberte databázi TestDatabase.
V nabídce vlevo vyberte Příjem dat.
V okně Pro příjem dat vyberte + Přidat datové připojení.
V okně Datové připojení zadejte následující informace:
V okně datového připojení použijte následující nastavení:
Zdroj dat:
Nastavení Navrhovaná hodnota Popis pole Název datového připojení DiagnosticsLogsConnection Název připojení, které chcete vytvořit v Azure Data Exploreru Obor názvů centra událostí AzureMonitoringData Název, který jste zvolili dříve a který identifikuje váš obor názvů Centrum událostí DiagnosticData Centrum událostí, které jste vytvořili Skupina příjemců adxpipeline Skupina uživatelů, kterou jste definovali v centrum událostí, které jste vytvořili Cílová tabulka:
Existují dvě možnosti směrování: statické a dynamické. V tomto kurzu použijete statické směrování (výchozí), kde zadáte název tabulky, formát dat a mapování. Možnost Moje data zahrnují informace o směrování ponechte nevybranou.
Nastavení Navrhovaná hodnota Popis pole Tabulka Diagnostickézáznamy Tabulka, kterou jste vytvořili v databázi TestDatabase . Formát dat JSON Formát použitý v tabulce. Mapování sloupců DiagnosticRawRecordsMapping Mapování, které jste vytvořili v databázi TestDatabase, která mapuje příchozí data JSON na názvy sloupců a datové typy tabulky DiagnosticRawRecords. Vyberte Vytvořit.
Dotazování na nové tabulky
Teď máte kanál s tokem dat. Příjem dat přes cluster ve výchozím nastavení trvá 5 minut, takže před zahájením dotazování povolte tok dat po dobu několika minut.
Dotazování na tabulku diagnostických metrik
Následující dotaz analyzuje data doby trvání dotazu ze záznamů diagnostických metrik v Azure Data Exploreru:
DiagnosticMetrics
| where Timestamp > ago(15m) and MetricName == 'QueryDuration'
| summarize avg(Average)
Výsledky dotazu:
avg_Average |
---|
00:06.156 |