Megosztás a következőn keresztül:


Adatok betöltése az NLog-fogadóval az Azure Data Explorer

Fontos

Ez az összekötő használható a Microsoft Fabric valós idejű elemzéseiben . Használja a cikkben található utasításokat a következő kivételekkel:

Az NLog egy rugalmas és ingyenes naplózási platform a különböző .NET-platformokhoz, beleértve a .NET standardot is. Az NLog lehetővé teszi, hogy több célhoz, például adatbázishoz, fájlhoz vagy konzolhoz írjon. Az NLog használatával menet közben módosíthatja a naplózási konfigurációt. Az NLog-fogadó az NLog célja, amely lehetővé teszi, hogy naplóüzeneteket küldjön egy Azure Data Explorer-fürtnek. A beépülő modul az Azure-Kusto-Data kódtárra épül, és hatékony módot kínál a naplók fürtbe való elsüllyesztésére.

Ebből a cikkből megtudhatja, hogyan:

Az adatösszekötők teljes listáját lásd: Adatösszekötők áttekintése.

Előfeltételek

A környezet kialakítása

Ebben a szakaszban előkészíti a környezetet az NLog-összekötő használatára.

A csomag telepítése

Adja hozzá az NLog.Azure.Kusto NuGet-csomagot. Használja az Install-Package parancsot, amely megadja a NuGet-csomag nevét.

Install-Package NLog.Azure.Kusto

Microsoft Entra alkalmazásregisztráció létrehozása

Microsoft Entra alkalmazáshitelesítést azokhoz az alkalmazásokhoz használjuk, amelyeknek az Azure Data Explorer felhasználó jelenléte nélkül kell hozzáférnie. Az NLog-összekötővel történő adatbetöltéshez létre kell hoznia és regisztrálnia kell egy Microsoft Entra szolgáltatásnevet, majd engedélyeznie kell a rendszerbiztonsági tagot egy Azure Data Explorer-adatbázis betöltéséhez.

  1. Az Azure Data Explorer-fürt használatával kövesse a Microsoft Entra alkalmazásregisztráció létrehozása az Azure Data Explorer-ban című cikk 1–7. lépését.
  2. Mentse a következő értékeket, hogy a későbbi lépésekben használhassa őket:
    • Alkalmazás (ügyfél) azonosítója
    • Címtár (bérlő) azonosítója
    • Titkos ügyfélkulcs értéke

A Microsoft Entra alkalmazás engedélyeinek megadása

  1. A webes felhasználói felület lekérdezés lapján csatlakozzon a fürthöz. További információ a csatlakozásról: Fürtök hozzáadása.

  2. Tallózással keresse meg azt az adatbázist, amelyben adatokat szeretne betöltésre.

  3. Futtassa a következő felügyeleti parancsot, és cserélje le a helyőrzőket. Cserélje le a DatabaseName elemet a céladatbázis nevére, az ApplicationID értékét pedig a korábban mentett értékre. Ez a parancs megadja az alkalmazásnak az adatbázis-betöltési szerepkört. További információ: Adatbázis-biztonsági szerepkörök kezelése.

    .add database <DatabaseName> ingestors ('aadapp=<ApplicationID>') 'Azure Data Explorer App Registration'
    

    Megjegyzés

    Az utolsó paraméter egy sztring, amely jegyzetekként jelenik meg az adatbázishoz társított szerepkörök lekérdezésekor. További információ: Meglévő biztonsági szerepkörök megtekintése.

Tábla- és betöltési leképezés létrehozása

Hozzon létre egy céltáblát a bejövő adatokhoz.

  • A lekérdezésszerkesztőben futtassa a következő táblalétrehozási parancsot, és cserélje le a TableName helyőrzőt a céltábla nevére:

    .create table <TableName> (Timestamp:datetime, Level:string, Message:string, FormattedMessage:dynamic, Exception:string, Properties:dynamic)
    

Az Azure Data Explorer célkonfiguráció hozzáadása az alkalmazáshoz

A következő lépések végrehajtásával:

  • Az Azure Data Explorer célkonfigurációjának hozzáadása
  • Készítsen buildet és futtassa az alkalmazást
  1. Adja hozzá az Azure Data Explorer-célt az NLog-konfigurációs fájlhoz.

    <targets>
        <target name="adxtarget" xsi:type="ADXTarget"
        IngestionEndpointUri="<ADX connection string>"
        Database="<ADX database name>"
        TableName="<ADX table name>"
        ApplicationClientId="<AAD App clientId>"
        ApplicationKey="<AAD App key>"
        Authority="<AAD tenant id>"
        />
    </targets>
    
    ##Rules
    <rules>
        <logger name="*" minlevel="Info" writeTo="adxtarget" />
    </rules>
    

    További lehetőségekért lásd: Azure Data Explorer Nlog-összekötő.

  2. Adatok küldése az Azure Data Explorer az NLog-fogadóval. Például:

    logger.Info("Processed {@Position} in {Elapsed:000} ms.", position, elapsedMs);
    logger.Error(exceptionObj, "This was exception");
    logger.Debug("Processed {@Position} in {Elapsed:000} ms. ", position, elapsedMs);
    logger.Warn("Processed {@Position} in {Elapsed:000} ms. ", position, elapsedMs);
    
  3. Hozza létre és futtassa az alkalmazást. Ha például a Visual Studiót használja, nyomja le az F5 billentyűt.

  4. Ellenőrizze, hogy az adatok a fürtben találhatóak-e. A webes felhasználói felületen futtassa a következő lekérdezést a helyőrző helyett a korábban használt tábla nevére:

    <TableName>
    | take 10
    

A mintaalkalmazás futtatása

Példaként használja a naplógenerátor mintaalkalmazást, amely bemutatja, hogyan konfigurálhatja és használhatja az NLog-fogadót.

  1. Klónozza az NLog-fogadó git-adattárát a következő git-paranccsal:

    git clone https://github.com/Azure/azure-kusto-nlog-sink.git
    
  2. Állítsa be a következő környezeti változókat, hogy az NLog-konfigurációs fájl azonnal beolvassa őket a környezetből:

    Változó Leírás
    INGEST_ENDPOINT A fürt betöltési URI-ja a fürt> formátumábanhttps://ingest-<.<region.kusto.windows.net>.
    ADATBÁZIS A céladatbázis kis- és nagybetűkre érzékeny neve.
    APP_ID A hitelesítéshez szükséges alkalmazásügyfél-azonosító. Ezt az értéket az Alkalmazásregisztráció létrehozása Microsoft Entra területen mentette.
    APP_KEY A hitelesítéshez alkalmazáskulcs szükséges. Ezt az értéket az Alkalmazásregisztráció létrehozása Microsoft Entra területen mentette.
    AZURE_TENANT_ID Annak a bérlőnek az azonosítója, amelyben az alkalmazás regisztrálva van. Ezt az értéket az Alkalmazásregisztráció létrehozása Microsoft Entra területen mentette.

    A környezeti változókat manuálisan vagy a következő parancsokkal állíthatja be:

    $env:INGEST_ENDPOINT="<ingestionURI>"
    $env:APP_ID="<appId>"
    $env:APP_KEY="<appKey>"
    $env:AZURE_TENANT_ID="<tenant>"
    $env:DATABASE="<databaseName>"
    
  3. A terminálon belül keresse meg a klónozott adattár gyökérmappáját, és futtassa a következő dotnet parancsot az alkalmazás létrehozásához:

    cd .\NLog.Azure.Kusto.Samples\
    dotnet build
    
  4. A terminálon belül lépjen a minták mappába, és futtassa a következő dotnet parancsot az alkalmazás futtatásához:

    dotnet run
    
  5. A webes felhasználói felületen válassza ki a céladatbázist, és futtassa a következő lekérdezést a betöltött adatok vizsgálatához.

    ADXNLogSample
    | take 10
    

    A kimenetnek az alábbi képhez hasonlóan kell kinéznie:

    Képernyőkép a 10 függvényt és eredményt tartalmazó táblázatról.