Oktatóanyag: Monitorozási adatok betöltése és lekérdezése az Azure Data Explorerben

Ez az oktatóanyag bemutatja, hogyan lehet adatokat beszúrni a diagnosztikai és tevékenységnaplókból egy Azure Data Explorer-fürtbe kód írása nélkül. Ezzel az egyszerű betöltési módszerrel gyorsan megkezdheti az Azure Data Explorer adatelemzéshez való lekérdezését.

Ebben az oktatóanyagban a következőket sajátíthatja el:

  • Táblák és betöltési leképezések létrehozása egy Azure Data Explorer-adatbázisban.
  • Formázd a betöltött adatokat egy frissítési szabályzat használatával.
  • Hozzon létre egy eseményközpontot , és csatlakoztassa az Azure Data Explorerhez.
  • Adatok streamelése egy eseményközpontba az Azure Monitor diagnosztikai metrikáiból, naplóiból és tevékenységnaplóiból.
  • A betöltött adatok lekérdezése az Azure Data Explorer használatával.

Megjegyzés:

Hozzon létre minden erőforrást ugyanabban az Azure-beli helyen vagy régióban.

Előfeltételek

Azure Monitor-adatszolgáltató: diagnosztikai metrikák, naplók és tevékenységnaplók

A következő szakaszokban megtekintheti és megismerheti az Azure Monitor diagnosztikai metrikái, naplói és tevékenységnaplói által biztosított adatokat. Ezen adatsémák alapján létrehoz egy betöltési folyamatot. A naplók minden eseménye rekordokat tartalmazó tömbbel rendelkezik. Ezt a rekordtömböt az oktatóanyag későbbi részében osztotta fel.

Példák diagnosztikai metrikákra, naplókra és tevékenységnaplókra

Egy Azure szolgáltatás Azure diagnosztikai metrikákat, naplókat és tevékenységnaplókat bocsát ki. Ezek a naplók adatokat szolgáltatnak a szolgáltatás működéséről.

Példa diagnosztikai metrikákra

A diagnosztikai metrikák egy perc időfelbontással összesítik az adatokat. Az alábbi példa egy Azure Data Explorer-metrikaesemény-sémát mutat be a lekérdezés időtartamáról:

{
    "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"
    }
    ]
}

Betöltési folyamat beállítása az Azure Data Explorerben

Az Azure Data Explorer-folyamat beállítása több lépést is magában foglal, például a táblalétrehozást és az adatbetöltést. Emellett módosíthatja, leképezheti és frissítheti az adatokat.

Csatlakozás az Azure Data Explorer webes felhasználói felületéhez

Az Azure Data Explorer TestDatabase-adatbázisban válassza a Lekérdezés lehetőséget az Azure Data Explorer webes felhasználói felületének megnyitásához.

Lekérdezési oldal.

A céltáblák létrehozása

Az Azure Monitor-naplók szerkezete nem táblázatos. Módosítania kell az adatokat, és ki kell bontania az egyes eseményeket egy vagy több rekordra. A nyers adatok betöltése a tevékenységnaplók számára egy ActivityLogsRawRecords nevű köztes táblába, valamint a diagnosztikai metrikákhoz és naplókhoz egy DiagnosticRawRecords nevű táblába. Ekkor módosíthatja és bővítheti az adatokat. Frissítési szabályzat használatával töltse be a kibontott adatokat a ActivityLogs táblába tevékenységnaplókhoz, a DiagnosticMetrics táblába diagnosztikai metrikákhoz, és a DiagnosticLogs táblába diagnosztikai naplókhoz. Ez a folyamat azt jelenti, hogy két külön táblát kell létrehoznia a tevékenységnaplók betöltéséhez, valamint három külön táblát a diagnosztikai metrikák és naplók betöltéséhez.

Az Azure Data Explorer webes felhasználói felületén hozza létre a céltáblákat az Azure Data Explorer-adatbázisban.

Táblák létrehozása a diagnosztikai metrikákhoz

  1. A TestDatabase adatbázisban hozzon létre egy DiagnosticMetrics nevű táblát a diagnosztikai metrikák rekordjainak tárolásához. Használja a következő .create table felügyeleti parancsot:

    .create table DiagnosticMetrics (Timestamp:datetime, ResourceId:string, MetricName:string, Count:int, Total:double, Minimum:double, Maximum:double, Average:double, TimeGrain:string)
    
  2. A tábla létrehozásához válassza a Futtatás lehetőséget.

    Lekérdezés futtatása.

  3. Hozza létre a DiagnosticRawRecords nevű köztes adattáblát a TestDatabase adatbázisában az alábbi lekérdezés használatával történő adatkezeléshez. A tábla létrehozásához válassza a Futtatás lehetőséget.

    .create table DiagnosticRawRecords (Records:dynamic)
    
  4. Nulla megőrzési szabályzat beállítása a köztes táblához:

    .alter-merge table DiagnosticRawRecords policy retention softdelete = 0d
    

Táblaleképezések létrehozása

Mivel az adatformátum az json, létre kell hoznia egy adatleképezést. A json leképezés minden JSON-elérési utat egy táblaoszlop nevéhez kapcsol. Ha egy JSON-útvonal speciális karaktereket tartalmaz, ezeket így kell elkerülni: ['TulajdonságNév']. További információ: JSONPath szintaxis.

Diagnosztikai metrikák és naplók leképezése a táblára

A diagnosztikai metrikák és a naplóadatok a táblázathoz való leképezéséhez használja a következő lekérdezést:

.create table DiagnosticRawRecords ingestion json mapping 'DiagnosticRawRecordsMapping' '[{"column":"Records","Properties":{"path":"$.records"}}]'

A metrika- és naplóadatok frissítési szabályzatának létrehozása

Adatfrissítési szabályzat létrehozása diagnosztikai metrikákhoz

  1. Hozzon létre egy függvényt , amely kibővíti a diagnosztikai metrikák rekordjainak gyűjteményét, hogy a gyűjtemény minden egyes értéke külön sort kapjon. Használja a(z) mv-expand operátort:

    .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)
    }
    
  2. Adja hozzá a frissítési szabályzatot a céltáblához. Ez a szabályzat automatikusan futtatja a lekérdezést a DiagnosticRawRecords köztes adattáblában újonnan betöltött adatokon, és betölti az eredményeket a DiagnosticMetrics táblába:

    .alter table DiagnosticMetrics policy update @'[{"Source": "DiagnosticRawRecords", "Query": "DiagnosticMetricsExpand()", "IsEnabled": "True", "IsTransactional": true}]'
    

Azure Event Hubs-névtér létrehozása

Az Azure diagnosztikai beállításai lehetővé teszik a metrikák és naplók exportálását egy tárfiókba vagy egy eseményközpontba. Ebben az oktatóanyagban a metrikákat és naplókat egy eseményközponton keresztül irányítja át. Az alábbi lépésekben létrehoz egy eseményközpont-névteret és egy eseményközpontot a diagnosztikai metrikákhoz és naplókhoz. Az Azure Monitor létrehozza az event hub insights-operational-logs adatait a tevékenységnaplókhoz.

  1. Hozzon létre egy eseményközpontot egy Azure Resource Manager-sablon használatával az Azure Portalon. A cikk további lépéseinek követéséhez kattintson a jobb gombbal az Üzembe helyezés az Azure-ban gombra, majd válassza a Megnyitás új ablakban lehetőséget. Az Üzembe helyezés az Azure-ban gomb az Azure Portalra viszi.

    Üzembe helyezés az Azure-ban gomb.

  2. Hozzon létre egy Event Hubs-névteret és egy eseményközpontot a diagnosztikai naplókhoz. Megtudhatja, hogyan hozhat létre Event Hubs-névteret.

  3. Adja meg az alábbi adatokat az űrlapon. Az alábbi táblázatban nem szereplő beállításokhoz használja az alapértelmezett értékeket.

    Setting Ajánlott érték Leírás
    Subscription Az ön előfizetése Válassza ki az eseményközponthoz használni kívánt Azure-előfizetést.
    Erőforráscsoport test-resource-group Új erőforráscsoport létrehozása.
    Location Válassza ki az igényeinek leginkább megfelelő régiót. Hozza létre az eseményközpont névterét a többi erőforrással megegyező helyen.
    Névtér neve AzureMonitoringData Válasszon egy egyedi nevet a névtér azonosításához.
    Eseményközpont neve DiagnosticData Az eseményközpont a névtér alatt helyezkedik el, amely egy egyedi hatókörrel rendelkező tárolót biztosít.
    Fogyasztói csoport neve adxpipeline Hozzon létre egy fogyasztói csoportnevet. A fogyasztói csoportok lehetővé teszik több fogyasztó alkalmazás számára, hogy mindegyik külön nézetet biztosíthasson az eseménystreamről.

Azure Monitor-metrikák és naplók csatlakoztatása az eseményközponthoz

Most csatlakoztatnia kell a diagnosztikai metrikákat és naplókat, valamint a tevékenységnaplókat az eseményközponthoz.

Diagnosztikai metrikák és naplók csatlakoztatása az eseményközponthoz

Válasszon ki egy erőforrást, amelyből metrikákat szeretne exportálni. Számos erőforrástípus támogatja a diagnosztikai adatok exportálását, beleértve az eseményközpontok névterét, az Azure Key Vaultot, az Azure IoT Hubot és az Azure Data Explorer-fürtöket. Ebben az oktatóanyagban egy Azure Data Explorer-fürtöt használhat erőforrásként. Áttekintheti a lekérdezési teljesítmény mérőszámait és a betöltési eredmények naplóit.

  1. Válassza ki a Kusto-klasztert az Azure Portalon.

  2. Válassza a Diagnosztikai beállítások lehetőséget, majd válassza a Diagnosztikai beállítások bekapcsolása hivatkozást.

    Diagnosztikai beállítások.

  3. Megnyílik a Diagnosztikai beállítások panel. Hajtsa végre a következő lépéseket:

    1. Adja meg a diagnosztikai napló adatait ADXExportedData névvel.

    2. A LOG területen jelölje be a Sikeres feltöltés és a Sikertelen feltöltés jelölőnégyzeteket.

    3. A METRIC (METR) területen jelölje be a Lekérdezési teljesítmény jelölőnégyzetet.

    4. Jelölje be az Adatfolyam egy eseményközponti csomópontra jelölőnégyzetet.

    5. Válassza a Konfigurálás lehetőséget.

      Diagnosztikai beállítások panel.

  4. Az Eseményközpont kiválasztása panelen konfigurálja az adatok exportálását a diagnosztikai naplókból a létrehozott eseményközpontba:

    1. Az Eseményközpont névterének kiválasztása listában válassza az AzureMonitoringData lehetőséget.
    2. Az Eseményközpont kiválasztása névlistában válassza a DiagnosticData lehetőséget.
    3. Az Eseményközponti házirendek neveinek kiválasztásánál válassza ki a RootManagerSharedAccessKey lehetőséget.
    4. Kattintson az OK gombra.
  5. Válassza az Mentésgombot.

Az eseményközpontokba áramló adatok megtekintése

  1. Várjon néhány percet, amíg a kapcsolat létrejön, és befejeződik a tevékenységnapló exportálása az eseményközpontba. Nyissa meg az eseményközpontok névterét a létrehozott eseményközpontok megtekintéséhez.

    Létrehozott eseményközpontok.

  2. Tekintse meg az eseményközpontba áramló adatokat:

    Az Event Hub adatai.

Eseményközpont csatlakoztatása az Azure Data Explorerhez

Most létre kell hoznia az adatkapcsolatokat a diagnosztikai metrikákhoz, naplókhoz és tevékenységnaplókhoz.

Adatkapcsolat létrehozása diagnosztikai metrikákhoz, naplókhoz és tevékenységnaplókhoz

  1. A kustodocs nevű Azure Data Explorer-fürtben válassza az Adatbázisok lehetőséget a bal oldali menüben.

  2. Az Adatbázisok ablakban válassza ki a TestDatabase-adatbázist .

  3. A bal oldali menüben válassza az Adatbetöltés lehetőséget.

  4. Az Adatbetöltés ablakban válassza a + Adatkapcsolat hozzáadása lehetőséget.

  5. Az Adatkapcsolat ablakban adja meg a következő adatokat:

    Event Hub-adatkapcsolat.

  1. Használja az alábbi beállításokat az Adatkapcsolat ablakban:

    Adatforrás:

    Setting Ajánlott érték Mező leírása
    Adatkapcsolat neve DiagnosticsLogsConnection Az Azure Data Explorerben létrehozni kívánt kapcsolat neve.
    Eseményközpont névtér AzureMonitoringData A korábban a névtér azonosításához választott név.
    Eseményközpont DiagnosticData A létrehozott eseményközpont.
    Fogyasztói csoport adxpipeline A létrehozott eseményközponton definiált fogyasztói csoport.

    Céltábla:

    Az útválasztásnak két lehetősége van: statikus és dinamikus. Ebben az oktatóanyagban statikus útválasztást (alapértelmezett) használ, ahol megadja a tábla nevét, az adatformátumot és a leképezést. A Leave My data (Saját adatok) művelet az útválasztási adatokat is kijelöletlenül tartalmazza.

    Setting Ajánlott érték Mező leírása
    Tábla DiagnosticRawRecords A TestDatabase adatbázisban létrehozott tábla.
    Adatformátum JSON A táblázatban használt formátum.
    Oszlopleképezés Diagnosztikai Nyers Adatrekordok Térképezése A TestDatabase adatbázisban létrehozott leképezés, amely leképezi a bejövő JSON-adatokat a DiagnosticRawRecords tábla oszlopneveihez és adattípusaihoz .
  2. Válassza a Create gombot.

Az új táblák lekérdezése

Most már rendelkezik egy adatfolyamot tartalmazó csővezetékkel. A fürtbe való betöltés alapértelmezés szerint öt percet vesz igénybe, ezért várjon néhány percet, mielőtt elkezdené a lekérdezést.

A diagnosztikai metrikák táblájának lekérdezése

Az alábbi lekérdezés az Azure Data Explorer diagnosztikai metrikarekordjaiból származó lekérdezések időtartamadatait elemzi:

DiagnosticMetrics
| where Timestamp > ago(15m) and MetricName == 'QueryDuration'
| summarize avg(Average)

Lekérdezési eredmények:

avg_Average
00:06.156