Megosztás:


Átalakítás létrehozása az Azure Monitorban

Az Azure Monitorban végzett átalakítások lehetővé teszik a bejövő adatok szűrését vagy módosítását a Log Analytics-munkaterületen való tárolás előtt. Ezek Kusto lekérdezésnyelv (KQL) utasításként vannak implementálva egy adatgyűjtési szabályban (DCR). Ez a cikk útmutatást nyújt egy átalakítási lekérdezés létrehozásához és teszteléséhez, valamint a DCR-hez való hozzáadásához.

Megjegyzés:

Ha nem ismeri a KQL-t vagy naplólekérdezéseket hoz létre az Azure Monitor-adatokhoz, kezdje a Log Analytics áttekintésével az Azure Monitorban és az Azure Monitor naplólekérdezéseivel.

Egyszerű lekérdezési struktúra

Az összes átalakítási lekérdezés a bemeneti adatfolyamot jelképező virtuális táblával sourcekezdődik. Ezután bármely támogatott KQL-operátorral ugyanúgy szűrhet, módosíthat vagy adhat hozzá oszlopokat az adatokhoz, mint bármely más táblához. A lekérdezést a rendszer egyenként alkalmazza az adatforrás által küldött minden egyes bejegyzésre.

A lekérdezés kimenetének meg kell egyeznie a céltábla sémájával az alábbi szempontok szerint:

  • Kihagyhat olyan oszlopokat, amelyeket nem szabad feltölteni. Az oszlop üres lesz a céltáblában lévő rekord számára.
  • Minden olyan oszlopot zárjon ki, amely nem szerepel a kimeneti táblában. Az adatok hiba nélkül lesznek elfogadva, de a többletadatok betöltéséért díjat számítunk fel, annak ellenére, hogy nincsenek tárolva.
  • Minden átalakítás kimenetének érvényes időbélyeget kell tartalmaznia egy típusnak TimeGeneratednevezett datetime oszlopban. Ha az adatforrás nem tartalmazza ezt a tulajdonságot, hozzáadhatja azt az átalakításhoz a következővel extend : vagy project.

Az alábbi példa egy több függvényt végrehajtó átalakításra mutat be példát:

  • A bejövő adatokat egy where utasítással szűri.
  • Új oszlopot ad hozzá az extend operátorral.
  • A kimenet formázása a céltábla oszlopainak megfelelően az project operátorral.
source
| where severity == "Critical" 
| extend Properties = parse_json(properties)
| project
    TimeGenerated = todatetime(["time"]),
    Category = category,
    StatusDescription = StatusDescription,
    EventName = name,
    EventId = tostring(Properties.EventId)

Megjegyzés:

A különböző forgatókönyvek különböző mintáit az Azure Monitor adatgyűjtési szabályának (DCR) mintáiban és forgatókönyveiben tekintheti meg.

Az átalakítási lekérdezés létrehozása

Az átalakítást tartalmazó DCR létrehozása vagy szerkesztése előtt létre kell hoznia és tesztelnie kell az átalakítási lekérdezést. Ezt általában úgy teheti meg, hogy teszt lekérdezéseket futtat meglévő adatokon vagy tesztadatokon. Amikor megkapja a kívánt eredményeket, lecserélheti a tábla nevétsource, és beillesztheti a DCR-be az alábbiak szerint az Átalakítás hozzáadása DCR-hez című témakörben leírtak szerint.

Fontos

Az átalakítások nem támogatják az összes KQL-funkciót. A támogatott funkciókkal és korlátozásokkal kapcsolatban tekintse meg az Azure Monitor-átalakítások támogatott KQL-funkcióit.

Ha például transzformációt hoz létre a Syslog-események szűréséhez, a következő lekérdezéssel kezdheti, amelyet a Log Analyticsben futtathat.

Syslog | where SeverityLevel != 'info'

Ezt a lekérdezést beillesztheti a DCR-be, majd módosíthatja a tábla nevét source.

source | where SeverityLevel != 'info'

A lekérdezés teszteléséhez használja az alábbi stratégiák egyikét az adatokhoz.

  • Ha már gyűjti az átalakítani kívánt adatokat, a Log Analytics használatával írhat olyan lekérdezést, amely szükség szerint szűri vagy módosítja az adatokat. Másolja ki a lekérdezés szövegét, és illessze be a DCR-be.
  • A Log Analytics használatával írja meg a lekérdezést az datatable operátorral, és hozzon létre egy mintaadatkészletet, amely a bejövő adatokat jelöli. Másolja ki a lekérdezés szövegét az datatable operátor nélkül, és illessze be a DCR-be.
  • A folyamat segítségével hozzon létre egy új táblát az Azure Portalon, és adjon meg mintaadatokat. Az átalakítási lekérdezés létrehozásához és teszteléséhez használja a mellékelt felületet. Másolja a lekérdezés szövegét, és illessze be a DCR-be, vagy fejezze be a folyamatot, majd szerkessze a DCR-t az átalakítási lekérdezés másolásához. Ezután törölheti az új táblát, ha nincs rá szüksége.

Átalakítás hozzáadása a DCR-hez

Miután elvégezte az átalakítási lekérdezést, hozzáadhatja azt egy DCR-hez. Az Azure Monitor adatgyűjtési szabályainak (DCR-k) létrehozásával és szerkesztésével kapcsolatos útmutató segítségével hozza létre vagy szerkessze a DCR-t az ebben a szakaszban található információk alapján, hogy az átalakítási lekérdezést belefoglalja a DCR definícióba.

Megjegyzés:

Egyes adatforrások az Azure Portallal biztosítják az átalakítás DCR-hez való hozzáadását. Ha például egy szöveget egy virtuális gépről gyűjt össze, akkor átalakítási lekérdezést adhat meg az Azure Portalon. A legtöbb adatgyűjtési forgatókönyvhez azonban jelenleg közvetlenül a DCR-definícióval kell dolgoznia az átalakítás hozzáadásához. Ez az ebben a szakaszban leírt folyamat.

Az átalakítási lekérdezés a transformKql DCR Adatfolyam s szakaszában található tulajdonságban van megadva. Ez az a szakasz, amely egy adatforrást egy célhelyhez párosít. Az átalakítás az adatfolyam bejövő adatfolyamára lesz alkalmazva, mielőtt a rendszer elküldené azt a célhelyre. Ez csak akkor érvényes az adatfolyamra, ha ugyanazt az adatfolyamot vagy célhelyet használják más adatfolyamokban is.

Ha a transformKql tulajdonság nincs megadva, vagy ha az értéke egyszerű source, akkor a rendszer nem alkalmaz átalakítást, és a rendszer módosítás nélkül továbbítja a bejövő adatokat a célhelyre.

Fontos

Az átalakítási lekérdezésnek egyetlen sorban kell lennie a DCR-ben. Ha az Azure Portalon hozza létre az átalakítást, több sort is használhat az olvashatóság érdekében, és \n minden új sor lekérdezésében szerepelni fog.

Az alábbi példában nincs transformKql tulajdonság, ezért a rendszer módosítás nélkül küldi el a bejövő adatokat a célhelyre.

"dataFlows": [ 
    { 
        "streams": [ 
        "Microsoft-Syslog" 
        ], 
        "destinations": [ 
        "centralWorkspace" 
        ] 
    } 
] 

Az alábbi példában transformKql egy egyszerű source lekérdezést tartalmaz, így a bejövő adatokat a rendszer módosítás nélkül küldi el a célhelyre. A funkció megegyezik az előző példával.

"dataFlows": [ 
    { 
        "streams": [ 
        "Microsoft-Syslog" 
        ], 
        "transformKql": "source", 
        "destinations": [ 
        "centralWorkspace" 
        ] 
    } 
] 

Az alábbi példában van egy lekérdezés, transformKql amely szűri az adatokat, így csak a hibaüzenetek lesznek elküldve a célhelyre.

"dataFlows": [ 
    { 
        "streams": [ 
        "Microsoft-Syslog" 
        ], 
        "transformKql": "source | where message has 'error'", 
        "destinations": [ 
        "centralWorkspace" 
        ] 
    } 
] 

Munkaterület-átalakítási DCR létrehozása

A munkaterület-átalakítási adatgyűjtési szabály (DCR) egy speciális DCR , amely közvetlenül egy Log Analytics-munkaterületre van alkalmazva. Minden munkaterülethez csak egy munkaterület-átalakítási DCR tartozhat, de bármilyen számú táblához tartalmazhat átalakításokat.

Az alábbi módszerek egyikével létrehozhat egy munkaterület-átalakítási DCR-t a munkaterülethez, és hozzáadhat hozzá egy vagy több átalakítást.

Megjegyzés:

Egy új átalakítási lekérdezés aktiválása akár 60 percet is igénybe vehet.

A munkaterület-átalakítási DCR-t úgy hozhatja létre az Azure Portalon, hogy hozzáad egy átalakítást egy támogatott táblához.

  1. Az Azure Portal Log Analytics-munkaterületek menüjében válassza a Táblák lehetőséget. Kattintson a táblázat jobb oldalára, és válassza az Átalakítás létrehozása lehetőséget.

    Képernyőkép egy táblázat átalakításának azure portalon történő létrehozásáról.

  2. Ha a munkaterület-átalakítási DCR még nem lett létrehozva ehhez a munkaterülethez, válassza a létrehozási lehetőséget. Ha már létrejött, akkor a DCR már ki van választva. Minden munkaterület csak egy munkaterület-átalakítási DCR-et tartalmazhat.

    Új adatgyűjtési szabály létrehozását bemutató képernyőkép.

  3. Kattintson a Tovább gombra a mintaadatok táblázatból való megtekintéséhez. Kattintson az Átalakítási szerkesztőre az átalakítási lekérdezés definiálásához.

    Képernyőkép a naplótáblából származó mintaadatokról.

  4. Ezután szerkesztheti és futtathatja az átalakítási lekérdezést, hogy lássa az eredményeket a táblából származó tényleges adatokon. Módosítsa és tesztelje a lekérdezést, amíg meg nem kapja a kívánt eredményt.

  5. Ha elégedett a lekérdezéssel, kattintson az Alkalmaz, majd a Tovább, végül a Létrehozás gombra, hogy elmentse a DCR-t az új átalakítással.

    Az átalakítás mentését bemutató képernyőkép.

Átalakítások optimalizálása és monitorozása

Az átalakítások KQL-lekérdezést futtatnak minden DCR-rel összesített adatrekordon, ezért fontos, hogy hatékonyan fussanak. Az átalakítási végrehajtási idő hozzájárul a teljes adatbetöltés késéséhez, és a túl sok időt igénylő átalakítások hatással lehetnek az adatgyűjtés teljesítményére, és adatvesztéshez vezethetnek. Az optimális átalakítások futtatása legfeljebb 1 másodpercet vesz igénybe. Lásd a napló lekérdezéseinek optimalizálása az Azure Monitorban útmutatót a lekérdezés átalakításként történő implementálása előtti teszteléshez, valamint a nem hatékonyan futó lekérdezések optimalizálására vonatkozó javaslatokért.

Fontos

Adatvesztést tapasztalhat, ha egy átalakítás több mint 20 másodpercet vesz igénybe.

Mivel az átalakítások nem interaktívan futnak, fontos, hogy folyamatosan figyeljük őket, hogy megfelelően fussanak, és ne kelljen túl sok időt igénybe venni az adatok feldolgozásához. Az átalakítások állapotát és teljesítményét monitorozási naplókkal és metrikákkal kapcsolatos részletekért tekintse meg az Azure Monitor DCR-adatgyűjtésének figyelése és hibaelhárítása című témakört. Ez magában foglalja a KQL-ben előforduló hibák és metrikák azonosítását a futási időtartam nyomon követéséhez.

A rendszer automatikusan összegyűjti az alábbi metrikákat az átalakításokhoz, és rendszeresen ellenőriznie kell, hogy az átalakítások továbbra is a várt módon futnak-e. Hozzon létre metrikariasztási szabályokat , hogy automatikusan értesítést kapjon, ha az egyik metrika túllépi a küszöbértéket.

  • Naplók átalakítási időtartama percenként
  • Naplók átalakítási hibái percenként

Engedélyezze a DCR-hibanaplók használatát az átalakításokban vagy más lekérdezésekben előforduló hibák nyomon követéséhez. Hozzon létre egy naplóriasztási szabályt, amely automatikusan értesítést küld a táblába írt bejegyzésről.

Útmutatás

Az adatgyűjtési módszertől függően több metódus is létrehozhat átalakításokat. Az alábbi táblázat útmutatást tartalmaz az átalakítások létrehozásának különböző módszereihez.

Adatgyűjtés Referenciák
Adatnapló-beolvasási API Adatok küldése az Azure Monitor-naplókba a REST API (Azure Portal) használatával
Adatok küldése az Azure Monitor-naplókba REST API használatával (Azure Resource Manager-sablonok)
Virtuális gép az Azure Monitor-ügynökkel Átalakítás hozzáadása az Azure Monitor-naplóhoz
Kubernetes-fürt Container Insights használatával Adatátalakítások a Container Insightsban
Azure Event Hubs Oktatóanyag: Események betöltése az Azure Event Hubsból az Azure Monitor-naplókba (nyilvános előzetes verzió)

Korlátozások és szempontok

  • A Log Analytics-munkaterületek nem minden táblája támogatja az átalakításokat. A támogatott táblák listájáért tekintse meg az Azure Monitor-naplókban az átalakításokat támogató táblákat .
  • Nem minden KQL-operátor támogatott az átalakítási lekérdezésekben. Tekintse meg az Azure Monitor-átalakítások támogatott KQL-funkcióit.
  • Bár az átalakítások egyetlen adatforrást küldhetnek több táblába, nem küldhetnek adatokat több munkaterületre. Ha egyetlen adatforrásból szeretne adatokat küldeni több munkaterületre, hozzon létre több DCR-t.
  • A munkaterület-átalakítási DCR nem tud egyetlen adatforrást küldeni több táblába, mivel az átalakítás magára a táblára van alkalmazva.
  • A munkaterület-átalakítási DCR-ben lévő átalakítások a táblába küldött összes adatra vonatkoznak, függetlenül az adatforrástól. Ha különböző átalakításokat kell alkalmaznia különböző adatforrásokra, az átalakítási lekérdezésben található utasítással where különböző logikát alkalmazhat a különböző forrásokból származó adatokra.

Következő lépések