Adatok betöltése a Logstashból 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:
- Ha szükséges, hozzon létre adatbázisokat a KQL-adatbázis létrehozása című témakör utasításai alapján.
- Ha szükséges, hozzon létre táblákat az Üres tábla létrehozása című témakörben található utasítások alapján.
- Lekérdezési vagy betöltési URI-k lekérése az URI másolása című témakör utasításai alapján.
- Lekérdezések futtatása KQL-lekérdezéskészletben.
A Logstash egy nyílt forráskód kiszolgálóoldali adatfeldolgozási folyamat, amely egyszerre több forrásból is betölt adatokat, átalakítja az adatokat, majd elküldi az adatokat a kedvenc "tárolójának". Ebben a cikkben ezeket az adatokat az Azure Data Explorer küldi el, amely egy gyors és nagy mértékben méretezhető adatfeltárási szolgáltatás a napló- és telemetriaadatokhoz. Először létre fog hozni egy táblát és egy adatleképezést egy tesztfürtben, majd a Logstash-et arra irányítja, hogy adatokat küldjön a táblába, és ellenőrizze az eredményeket.
Megjegyzés
Ez az összekötő jelenleg csak a json adatformátumot támogatja.
Előfeltételek
- Microsoft-fiók vagy Microsoft Entra felhasználói identitás. Nincs szükség Azure-előfizetésre.
- Egy Azure-Data Explorer-fürt és -adatbázis. Hozzon létre egy fürtöt és egy adatbázist.
- A Logstash 6-os vagy újabb verziójának telepítési útmutatója.
Tábla létrehozása
Miután létrehozott egy fürtöt és egy adatbázist, ideje létrehozni egy táblát.
Tábla létrehozásához futtassa a következő parancsot az adatbázis-lekérdezési ablakban:
.create table logs (timestamp: datetime, message: string)
Futtassa a következő parancsot annak ellenőrzéséhez, hogy az új tábla
logs
létrejött-e, és hogy üres-e:logs | count
Leképezés létrehozása
A leképezést az Azure Data Explorer használja a bejövő adatok céltáblasé alakításához. A következő parancs létrehoz egy nevű basicmsg
új leképezést, amely kinyeri a bejövő json tulajdonságait a által jelzett path
módon, és megjeleníti őket a column
következőnek: .
Futtassa a következő parancsot a lekérdezési ablakban:
.create table logs ingestion json mapping 'basicmsg' '[{"column":"timestamp","path":"$.@timestamp"},{"column":"message","path":"$.message"}]'
A Logstash kimeneti beépülő modul telepítése
A Logstash kimeneti beépülő modul kommunikál az Azure Data Explorer, és elküldi az adatokat a szolgáltatásnak. További információ: Logstash beépülő modul.
Egy parancshéjban keresse meg a Logstash gyökérkönyvtárát, majd futtassa a következő parancsot a beépülő modul telepítéséhez:
bin/logstash-plugin install logstash-output-kusto
A Logstash konfigurálása mintaadatkészlet létrehozásához
A Logstash mintaeseményeket hozhat létre, amelyek egy végpontok közötti folyamat tesztelésére használhatók. Ha már használja a Logstashot, és rendelkezik hozzáféréssel a saját eseménystreamjéhez, ugorjon a következő szakaszra.
Megjegyzés
Ha saját adatokat használ, módosítsa az előző lépésekben definiált táblát és leképezési objektumokat.
Szerkessze a szükséges folyamatbeállításokat tartalmazó új szövegfájlt (a vi használatával):
vi test.conf
Illessze be az alábbi beállításokat, amelyek alapján a Logstash 1000 teszteseményt hoz létre:
input { stdin { } generator { message => "Test Message 123" count => 1000 } }
Ez a konfiguráció tartalmazza a stdin
bemeneti beépülő modult is, amely lehetővé teszi, hogy több üzenetet írjon saját maga (ügyeljen arra, hogy az Enter használatával küldje be őket a folyamatba).
A Logstash konfigurálása adatok Azure Data Explorer
Illessze be az alábbi beállításokat az előző lépésben használt konfigurációs fájlba. Cserélje le az összes helyőrzőt a beállítás megfelelő értékeire. További információ: Microsoft Entra-alkalmazás létrehozása.
output {
kusto {
path => "/tmp/kusto/%{+YYYY-MM-dd-HH-mm-ss}.txt"
ingest_url => "https://ingest-<cluster name>.kusto.windows.net/"
app_id => "<application id>"
app_key => "<application key/secret>"
app_tenant => "<tenant id>"
database => "<database name>"
table => "<target table>" # logs as defined above
json_mapping => "<mapping name>" # basicmsg as defined above
}
}
Paraméter neve | Description |
---|---|
Elérési út | A Logstash beépülő modul eseményeket ír ideiglenes fájlokba, mielőtt elküldené őket az Azure Data Explorer. Ez a paraméter tartalmaz egy elérési utat, ahol a fájlokat meg kell írni, és egy időkifejezést a fájlrotációhoz, amely feltölti az Azure Data Explorer szolgáltatásba. |
ingest_url | A Kusto-végpont a betöltéssel kapcsolatos kommunikációhoz. |
app_id, app_key és app_tenant | Az Azure Data Explorer való csatlakozáshoz szükséges hitelesítő adatok. Ügyeljen arra, hogy betöltési jogosultságokkal rendelkező alkalmazást használjon. |
Adatbázis | Az események elhelyezéséhez az adatbázis neve. |
table | A céltábla neve események elhelyezéséhez. |
json_mapping | A leképezéssel egy bejövő esemény json-sztringje megfeleltethető a megfelelő sorformátumnak (meghatározza, hogy melyik tulajdonság melyik oszlopba kerül). |
A Logstash futtatása
Most már készen állunk a Logstash futtatására és a beállítások tesztelésére.
A parancshéjban keresse meg a Logstash gyökérkönyvtárát, majd futtassa a következő parancsot:
bin/logstash -f test.conf
Látnia kell a képernyőn megjelenő információkat, majd a mintakonfiguráció által létrehozott 1000 üzenetet. Ezen a ponton további üzeneteket is beírhat manuálisan.
Néhány perc elteltével futtassa a következő Data Explorer lekérdezést a megadott táblában lévő üzenetek megtekintéséhez:
logs | order by timestamp desc
A Logstashból való kilépéshez válassza a Ctrl+C billentyűkombinációt
Az erőforrások eltávolítása
Futtassa a következő parancsot az adatbázisban a logs
tábla törléséhez:
.drop table logs