Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az NLog egy rugalmas és ingyenes naplózási platform különböző .NET-platformokhoz, beleértve a .NET szabványt 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 egyik célja, amely lehetővé teszi a naplóüzenetek KQL-fürtbe való küldését. 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 kérhet le adatokat az nLog-fogadóval.
Az adatösszekötők teljes listájáért tekintse meg az adatösszekötők áttekintését.
Előfeltételek
- .NET SDK 6.0 vagy újabb
- Azure-előfizetés. Hozzon létre egy ingyenes Azure-fiókot.
- KQL-adatbázis a Microsoft Fabricben. Másolja az adatbázis URI-ját az Access meglévő KQL-adatbázisának utasításaival.
- KQL-lekérdezéskészlet. Ezt nevezzük a lekérdezési környezetnek.
Saját környezet beállítása
Ebben a szakaszban előkészíti a környezetet az NLog-összekötő használatára.
Telepítse a(z) csomagot
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
A Microsoft Entra alkalmazáshitelesítést olyan alkalmazásokhoz használják, amelyeknek a felhasználó jelenléte nélkül kell hozzáférni a platformhoz. Ha az NLog-összekötővel szeretne adatokat lekérni, létre kell hoznia és regisztrálnia kell egy Microsoft Entra szolgáltatásnevet, majd engedélyeznie kell ezt az egyszerű felhasználót, hogy adatokat szerezzen be egy adatbázisból.
A Microsoft Entra szolgáltatásnév az Azure Portalon vagy programozott módon hozható létre, ahogyan az alábbi példában is látható.
Ez a szolgáltatásnév lesz az összekötő által használt identitás, amellyel adatokat írhat a táblában a Kusto-ban. Később engedélyt ad a szolgáltatásnévnek a Kusto-erőforrások eléréséhez.
Jelentkezzen be az Azure-előfizetésbe az Azure CLI-vel. Ezután hitelesítés a böngészőben.
az loginVálassza ki az előfizetést az egyszerű szolgáltatás üzemeltetéséhez. Erre a lépésre akkor van szükség, ha több előfizetéssel rendelkezik.
az account set --subscription YOUR_SUBSCRIPTION_GUIDHozza létre a szolgáltatásnevet. Ebben a példában a szolgáltatásnév neve
my-service-principal.az ad sp create-for-rbac -n "my-service-principal" --role Contributor --scopes /subscriptions/{SubID}A visszaadott JSON-adatokból másolja ki a
appId,passwordéstenantkésőbbi használatra.{ "appId": "00001111-aaaa-2222-bbbb-3333cccc4444", "displayName": "my-service-principal", "name": "my-service-principal", "password": "00001111-aaaa-2222-bbbb-3333cccc4444", "tenant": "00001111-aaaa-2222-bbbb-3333cccc4444" }
Létrehozta a Microsoft Entra-alkalmazást és a szolgáltatásnevet.
Mentse a következő, későbbi lépésekben használandó értékeket: * Alkalmazás (ügyfél) azonosítója * Címtár (bérlő) azonosítója * Ügyfél titkos kulcsának értéke
A Microsoft Entra alkalmazás engedélyeinek megadása
A lekérdezési környezetben 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 pedig a korábban mentett értékre. Ez a parancs az adatbázis-betöltési szerepkört adja az alkalmazásnak. További információ: Adatbázis-biztonsági szerepkörök kezelése.
.add database <DatabaseName> ingestors ('aadapp=<ApplicationID>') 'NLOG Azure App Registration role'Feljegyzé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 üres táblát a bejövő adatok céltáblájaként.
A célkonfiguráció hozzáadása az alkalmazáshoz
A következő lépések végrehajtásával:
- A célkonfiguráció hozzáadása
- Készítsen buildet és futtassa az alkalmazást
Adja hozzá a célhelyet az NLog-konfigurációs fájlhoz.
<targets> <target name="targettable" xsi:type="TargetTable" IngestionEndpointUri="<Connection string>" Database="<Database name>" TableName="<Table name>" ApplicationClientId="<Entra App clientId>" ApplicationKey="<Entra App key>" Authority="<Entra tenant id>" /> </targets> ##Rules <rules> <logger name="*" minlevel="Info" writeTo="adxtarget" /> </rules>További lehetőségekért lásd az Nlog-összekötőt.
Adatok küldése az NLog-fogadóval. Példa:
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);Hozza létre és futtassa az alkalmazást. Ha például Visual Studiót használ, nyomja le az F5 billentyűt.
Ellenőrizze, hogy az adatok a fürtben találhatóak-e. A lekérdezési környezetben futtassa a következő lekérdezést, amely a helyőrzőt a korábban használt tábla nevére cseréli:
<TableName> | take 10
A mintaalkalmazás futtatása
Példaként használja a mintanapló-generátor alkalmazást, amely bemutatja, hogyan konfigurálhatja és használhatja az NLog-fogadót.
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Á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 Az adatcél betöltési URI-ja. Ezt az URI-t az előfeltételek között másolta. 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 a Microsoft Entra-alkalmazásregisztráció létrehozásakor mentette. APP_KEY A hitelesítéshez szükséges alkalmazáskulcs. Ezt az értéket a Microsoft Entra-alkalmazásregisztráció létrehozásakor mentette. AZURE_TENANT_ID Annak a bérlőnek az azonosítója, amelyben az alkalmazás regisztrálva van. Ezt az értéket a Microsoft Entra-alkalmazásregisztráció létrehozásakor mentette. A környezeti változókat manuálisan vagy a következő parancsokkal állíthatja be:
A terminálon belül keresse meg a klónozott adattár gyökérmappáját, és futtassa a következő
dotnetparancsot az alkalmazás létrehozásához:cd .\NLog.Azure.Kusto.Samples\ dotnet buildA terminálon belül keresse meg a mintamappát, és futtassa a következő
dotnetparancsot az alkalmazás futtatásához:dotnet runA lekérdezési környezetben válassza ki a céladatbázist, és futtassa a következő lekérdezést a betöltött adatok felderítéséhez.
ADXNLogSample | take 10A kimenetnek a következő képhez hasonlóan kell kinéznie: