Oktatóanyag: Események betöltése az Azure Event Hubsból az Azure Monitor-naplókba (nyilvános előzetes verzió)
Az Azure Event Hubs egy big data-alapú streamelési platform, amely több forrásból gyűjt eseményeket, amelyeket az Azure és a külső szolgáltatások betöltenek. Ez a cikk bemutatja, hogyan lehet adatokat közvetlenül egy eseményközpontból egy Log Analytics-munkaterületre betöltésre.
Ebben az oktatóanyagban az alábbiakkal fog megismerkedni:
- Céltábla létrehozása az eseményközpont adataihoz a Log Analytics-munkaterületen
- Adatgyűjtési végpont létrehozása
- Adatgyűjtési szabály létrehozása
- Adatgyűjtési szabály engedélyeinek megadása az eseményközpontnak
- Az adatgyűjtési szabály társítása az eseményközponttal
Előfeltételek
Ahhoz, hogy eseményeket küldjön az Azure Event Hubsból az Azure Monitor-naplókba, szüksége van ezekre az erőforrásokra, amelyek ugyanabban a régióban vannak:
- Log Analytics-munkaterület , ahol legalább közreműködői jogosultságokkal rendelkezik.
- A Log Analytics-munkaterületet egy dedikált fürthöz kell csatolni, vagy egy kötelezettségvállalási szinttel kell rendelkeznie.
- Event Hubs-névtér , amely nyilvános hálózati hozzáférést engedélyez. A privát kapcsolat és a hálózati biztonsági szegélyek (NSP) jelenleg nem támogatottak.
- Eseményközpont eseményekkel. Eseményeket küldhet az eseményközpontba az Események küldése és fogadása az Azure Event Hubs oktatóanyagaiban, vagy az Azure-erőforrások diagnosztikai beállításainak konfigurálásával.
Supported regions
Az Azure Monitor jelenleg támogatja az Event Hubsból való betöltést ezekben a régiókban:
Észak-, Dél- és Közép-Amerika | Európa | Közel-Kelet | Afrika | Ázsia és a Csendes-óceáni térség |
---|---|---|---|---|
Dél-Brazília | Közép-Franciaország | UAE North | South Africa North | Australia Central |
Délkelet-Brazília | North Europe | Australia East | ||
Canada Central | Norway East | Australia Southeast | ||
Canada East | Switzerland North | Közép-India | ||
USA keleti régiója | Nyugat-Svájc | Kelet-Ázsia | ||
USA 2. keleti régiója | UK South | Japan East | ||
USA déli középső régiója | Az Egyesült Királyság nyugati régiója | Jio Nyugat-India | ||
West US | West Europe | Korea Central | ||
West US 3 | Southeast Asia |
A szükséges információk összegyűjtése
A következő lépésekben szüksége lesz az előfizetés azonosítójére, az erőforráscsoport nevére, a munkaterület nevére, a munkaterület erőforrás-azonosítójére és az eseményközpont-példány erőforrás-azonosítójére:
Lépjen a munkaterületre a Log Analytics-munkaterületek menüben, és válassza a Tulajdonságok lehetőséget, és másolja ki az előfizetés azonosítóját, az erőforráscsoportot és a munkaterület nevét. Az oktatóanyagban szereplő erőforrások létrehozásához ezekre a részletekre lesz szüksége.
Válassza a JSON lehetőséget az Erőforrás JSON képernyőjének megnyitásához és a munkaterület erőforrás-azonosítójának másolásához. Adatgyűjtési szabály létrehozásához szüksége lesz a munkaterület erőforrás-azonosítóra.
Lépjen az eseményközpont-példányra, válassza a JSON lehetőséget az erőforrás JSON képernyőjének megnyitásához, és másolja ki az eseményközpont-példány erőforrás-azonosítóját. Az adatgyűjtési szabály és az eseményközpont társításához szüksége lesz az eseményközpont-példány erőforrás-azonosítójára.
Céltábla létrehozása a Log Analytics-munkaterületen
Az adatok betöltése előtt be kell állítania egy céltáblát. Az adatokat egyéni táblákba és támogatott Azure-táblákba is betöltheti.
Ha egyéni táblázatot szeretne létrehozni, amelybe eseményeket szeretne betöltésre, az Azure Portalon:
Válassza a Cloud Shell gombot, és győződjön meg arról, hogy a környezet PowerShellre van állítva.
Futtassa ezt a PowerShell-parancsot a tábla létrehozásához, adja meg a tábla nevét (
<table_name>
) a JSON-ban (egyéni tábla esetén _CL utótaggal együtt), és állítsa be a<subscription_id>
,<resource_group_name>
,<workspace_name>
és<table_name>
az értékeket aInvoke-AzRestMethod -Path
parancsban:$tableParams = @' { "properties": { "schema": { "name": "<table_name>", "columns": [ { "name": "TimeGenerated", "type": "datetime", "description": "The time at which the data was ingested." }, { "name": "RawData", "type": "string", "description": "Body of the event." }, { "name": "Properties", "type": "dynamic", "description": "Additional message properties." } ] } } } '@ Invoke-AzRestMethod -Path "/subscriptions/<subscription_id>/resourcegroups/<resource_group_name>/providers/microsoft.operationalinsights/workspaces/<workspace_name>/tables/<table_name>?api-version=2021-12-01-preview" -Method PUT -payload $tableParams
Fontos
- Az oszlopneveknek betűvel kell kezdődniük, és legfeljebb 45 alfanumerikus karakterből és aláhúzásból (
_
) állhatnak. _ResourceId
, ,_ResourceId
id
,_SubscriptionId
,TenantId
,Type
,UniqueId
, ésTitle
fenntartott oszlopnevek.- Az oszlopnevek megkülönböztetik a kis- és nagybetűket. Ügyeljen arra, hogy az adatgyűjtési szabályban a megfelelő esetet használja.
Adatgyűjtési végpont létrehozása
Adatgyűjtési szabály használatával történő adatgyűjtéshez adatgyűjtési végpontra van szükség:
Adatgyűjtési végpont létrehozása.
Fontos
Hozza létre az adatgyűjtési végpontot a Log Analytics-munkaterületével megegyező régióban.
Az adatgyűjtési végpont Áttekintés képernyőjén válassza a JSON nézetet.
Másolja ki az adatgyűjtési szabály erőforrás-azonosítóját . Ezt az információt a következő lépésben fogja használni.
Adatgyűjtési szabály létrehozása
Az Azure Monitor adatgyűjtési szabályokkal határozza meg, hogy mely adatokat gyűjtse össze, hogyan alakítsa át ezeket az adatokat, és hol küldje el az adatokat.
Adatgyűjtési szabály létrehozása az Azure Portalon:
A portál keresőmezőjében írja be a sablont, majd válassza az Egyéni sablon üzembe helyezése lehetőséget.
Válassza a Saját sablon készítése a szerkesztőben lehetőséget.
Illessze be az alábbi Resource Manager-sablont a szerkesztőbe, majd válassza a Mentés lehetőséget.
Figyelje meg az alábbi adatokat az adatgyűjtési szabályban:
identity
– Meghatározza a használni kívánt felügyelt identitás típusát. Példánkban rendszer által hozzárendelt identitást használunk. A felhasználó által hozzárendelt felügyelt identitást is konfigurálhatja.dataCollectionEndpointId
- Az adatgyűjtési végpont erőforrás-azonosítója.streamDeclarations
– Meghatározza az eseményközpontból betöltendő adatokat (bejövő adatok). A streamdeklaráció nem módosítható.TimeGenerated
– Az az időpont, amikor az adatokat az eseményközpontból az Azure Monitor-naplókba töltötték be.RawData
- Az esemény törzse. További információ: Események olvasása.Properties
- Az esemény felhasználói tulajdonságai. További információ: Események olvasása.
datasources
– Megadja az event hub fogyasztói csoportját és azt a streamet, amelybe az adatokat betölti.destinations
– Megadja az összes célhelyet, ahol az adatok el lesznek küldve. Adatokat egy vagy több Log Analytics-munkaterületre is betölthet.dataFlows
– Megfelel a streamnek a cél-munkaterülettel, és megadja az átalakítási lekérdezést és a céltáblát. A példánkban adatokat megyünk be a korábban létrehozott egyéni táblába. Egy támogatott Azure-táblába is betölthet.transformKql
– Megadja a bejövő adatokra (streamdeklarációra) alkalmazandó átalakítást a munkaterületre való küldés előtt. A példánkbantransformKql
source
a forrásból származó adatokat semmilyen módon nem módosítjuk, mert a bejövő adatokat egy olyan egyéni táblához megfeleljük, amelyet kifejezetten a megfelelő sémával hoztunk létre. Ha adatokat egy másik sémával rendelkező táblába ágyaz be, vagy a betöltés előtt szeretné szűrni az adatokat, definiáljon egy adatgyűjtés-átalakítást.
{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "dataCollectionRuleName": { "type": "string", "metadata": { "description": "Specifies the name of the data collection Rule to create." } }, "workspaceResourceId": { "type": "string", "metadata": { "description": "Specifies the Azure resource ID of the Log Analytics workspace to use." } }, "endpointResourceId": { "type": "string", "metadata": { "description": "Specifies the Azure resource ID of the data collection endpoint to use." } }, "tableName": { "type": "string", "metadata": { "description": "Specifies the name of the table in the workspace." } }, "consumerGroup": { "type": "string", "metadata": { "description": "Specifies the consumer group of event hub." }, "defaultValue": "$Default" } }, "resources": [ { "type": "Microsoft.Insights/dataCollectionRules", "name": "[parameters('dataCollectionRuleName')]", "location": "[resourceGroup().location]", "apiVersion": "2022-06-01", "identity": { "type": "systemAssigned" }, "properties": { "dataCollectionEndpointId": "[parameters('endpointResourceId')]", "streamDeclarations": { "Custom-MyEventHubStream": { "columns": [ { "name": "TimeGenerated", "type": "datetime" }, { "name": "RawData", "type": "string" }, { "name": "Properties", "type": "dynamic" } ] } }, "dataSources": { "dataImports": { "eventHub": { "consumerGroup": "[parameters('consumerGroup')]", "stream": "Custom-MyEventHubStream", "name": "myEventHubDataSource1" } } }, "destinations": { "logAnalytics": [ { "workspaceResourceId": "[parameters('workspaceResourceId')]", "name": "MyDestination" } ] }, "dataFlows": [ { "streams": [ "Custom-MyEventHubStream" ], "destinations": [ "MyDestination" ], "transformKql": "source", "outputStream": "[concat('Custom-', parameters('tableName'))]" } ] } } ] }
Az egyéni központi telepítési képernyőn adjon meg egy előfizetést és erőforráscsoportot az adatgyűjtési szabály tárolásához, majd adja meg a sablonban meghatározott paraméterek értékeit, beleértve a következőket:
- Régió – Az adatgyűjtési szabály régiója. Automatikusan feltöltve a kiválasztott erőforráscsoport alapján.
- Adatgyűjtési szabály neve – Adjon nevet a szabálynak.
- Munkaterület erőforrás-azonosítója – Lásd a szükséges információk gyűjtését.
- Végpont erőforrás-azonosítója – Az adatgyűjtési végpont létrehozásakor jön létre.
- Tábla neve – A céltábla neve. A példában, és amikor egyéni táblát használ, a tábla nevének a _CL utótaggal kell végződnie. Ha adatokat ír be egy Azure-táblába, adja meg a tábla nevét – például
Syslog
– az utótag nélkül. - Fogyasztói csoport – A fogyasztói csoport alapértelmezés szerint a következőre
$Default
van állítva: . Szükség esetén módosítsa az értéket egy másik event hub fogyasztói csoportra.
A részletek áttekintésekor válassza a Véleményezés + létrehozás , majd a Létrehozás lehetőséget.
Ha az üzembe helyezés befejeződött, bontsa ki az Üzembe helyezés részletei mezőt, és válassza ki az adatgyűjtési szabályt a részletek megtekintéséhez. Válassza a JSON nézetet.
Másolja ki az adatgyűjtési szabály erőforrás-azonosítóját . Ezt az információt a következő lépésben fogja használni.
Felhasználó által hozzárendelt felügyelt identitás konfigurálása (nem kötelező)
Ha úgy szeretné konfigurálni az adatgyűjtési szabályt, hogy támogassa a felhasználó által hozzárendelt identitást, a fenti példában cserélje le a következőt:
"identity": {
"type": "systemAssigned"
},
a következőre:
"identity": {
"type": "userAssigned",
"userAssignedIdentities": {
"<identity_resource_Id>": {
}
}
},
Az <identity_resource_Id>
érték megkereséséhez lépjen a felhasználó által hozzárendelt felügyelt identitás erőforrására az Azure Portalon, válassza a JSON lehetőséget az erőforrás JSON képernyőjének megnyitásához és a felügyelt identitás erőforrás-azonosítójának másolásához.
Naplóadatok betöltése Egy Azure-táblába (nem kötelező)
Adatok betöltése egy támogatott Azure-táblába:
Az adatgyűjtési szabályban módosítsa a következőt
outputStream
:Feladó:
"outputStream": "[concat('Custom-', parameters('tableName'))]"
To:
"outputStream": "outputStream": "[concat(Microsoft-', parameters('tableName'))]"
Itt
transformKql
definiáljon egy átalakítást, amely elküldi a betöltött adatokat a cél Azure-tábla céloszlopaiba.
Az eseményközpont engedélyének megadása az adatgyűjtési szabályhoz
A felügyelt identitással bármilyen eseményközpontnak vagy Event Hubs-névtérnek adhat engedélyt, hogy eseményeket küldjön az adatgyűjtési szabálynak és a létrehozott adatgyűjtési végpontnak. Amikor megadja az engedélyeket az Event Hubs-névtérnek, a névtérben lévő összes eseményközpont örökli az engedélyeket.
Az Azure Portal eseményközpontjában vagy Event Hubs-névterében válassza a Hozzáférés-vezérlés (IAM)>Szerepkör-hozzárendelés hozzáadása lehetőséget.
Válassza az Azure Event Hubs-adat fogadót, és válassza a Tovább gombot.
Válassza ki a Felügyelt identitás lehetőséget a hozzáférés hozzárendeléséhez, és kattintson a Tagok kijelölése elemre. Válassza ki az Adatgyűjtési szabályt, keresse meg az adatgyűjtési szabályt név szerint, majd kattintson a Kiválasztás gombra.
A szerepkör-hozzárendelés mentése előtt válassza a Véleményezés + hozzárendelés lehetőséget, és ellenőrizze a részleteket.
Az adatgyűjtési szabály társítása az eseményközponttal
Az utolsó lépés az adatgyűjtési szabály társítása ahhoz az eseményközponthoz, ahonnan eseményeket szeretne gyűjteni.
Egyetlen adatgyűjtési szabályt több olyan eseményközponthoz is társíthat, amelyek ugyanazt a fogyasztói csoportot osztják meg, és adatokat használnak ugyanarra a streamre. Másik lehetőségként hozzárendelhet egy egyedi adatgyűjtési szabályt az egyes eseményközpontokhoz.
Fontos
Legalább egy adatgyűjtési szabályt hozzá kell rendelnie az eseményközponthoz az adatok eseményközpontból való betöltéséhez. Ha törli az eseményközponthoz kapcsolódó összes adatgyűjtési szabálytársítást, az eseményközpontból leállítja az adatok betöltését.
Adatgyűjtési szabály társítása az Azure Portalon:
Az Azure Portal keresőmezőjében írja be a sablont, majd válassza az Egyéni sablon üzembe helyezése lehetőséget.
Válassza a Saját sablon készítése a szerkesztőben lehetőséget.
Illessze be az alábbi Resource Manager-sablont a szerkesztőbe, majd válassza a Mentés lehetőséget.
{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "eventHubResourceID": { "type": "string", "metadata": { "description": "Specifies the Azure resource ID of the event hub to use." } }, "associationName": { "type": "string", "metadata": { "description": "The name of the association." } }, "dataCollectionRuleID": { "type": "string", "metadata": { "description": "The resource ID of the data collection rule." } } }, "resources": [ { "type": "Microsoft.Insights/dataCollectionRuleAssociations", "apiVersion": "2021-09-01-preview", "scope": "[parameters('eventHubResourceId')]", "name": "[parameters('associationName')]", "properties": { "description": "Association of data collection rule. Deleting this association will break the data collection for this event hub.", "dataCollectionRuleId": "[parameters('dataCollectionRuleId')]" } } ] }
Az egyéni központi telepítési képernyőn adjon meg egy előfizetési és erőforráscsoportot az adatgyűjtési szabály társításához, majd adja meg a sablonban definiált paraméterek értékeit, beleértve a következőket:
- Régió – Automatikusan feltöltve a kiválasztott erőforráscsoport alapján.
- Event Hub-példány erőforrás-azonosítója – Lásd a szükséges információk gyűjtését.
- Társítás neve – Adjon nevet a társításnak.
- Adatgyűjtési szabály azonosítója – Az adatgyűjtési szabály létrehozásakor jön létre.
A részletek áttekintésekor válassza a Véleményezés + létrehozás , majd a Létrehozás lehetőséget.
A betöltési események céltáblájának ellenőrzése
Most, hogy hozzárendelte az adatgyűjtési szabályt az eseményközponthoz, az Azure Monitor-naplók betöltik az összes olyan meglévő eseményt, amelynek megőrzési ideje nem járt le, és minden új eseményt.
A betöltési események céltáblájának ellenőrzése:
Lépjen a munkaterületre, és válassza a Naplók lehetőséget.
Írjon egy egyszerű lekérdezést a lekérdezésszerkesztőbe, és válassza a Futtatás lehetőséget:
<table_name>
Eseményeket kell látnia az eseményközpontból.
Clean up resources
Ebben az oktatóanyagban a következő erőforrásokat hozta létre:
- Egyéni tábla
- Adatgyűjtési végpont
- Adatgyűjtési szabály
- Adatgyűjtési szabály társítás
Értékelje ki, hogy továbbra is szüksége van-e ezekre az erőforrásokra. Törölje a nem szükséges erőforrásokat egyenként, vagy törölje egyszerre az összes erőforrást az erőforráscsoport törlésével. A futtatásból kilépő erőforrások pénzbe kerülhetnek.
Ha le szeretné állítani az adatok eseményközpontból való betöltését, törölje az eseményközponthoz kapcsolódó összes adatgyűjtési szabálytársítást , vagy törölje magát az adatgyűjtési szabályokat . Ezek a műveletek az eseményközpont ellenőrzőpont-beállítását is visszaállítják.
Ismert problémák és korlátozások
- Ha előfizetést ad át a Microsoft Entra-címtárak között, az adatok betöltésének folytatásához kövesse az Azure-erőforrások felügyelt identitásaival kapcsolatos ismert problémák című cikkben leírt lépéseket.
- Akár 64 KB-os üzeneteket is betölthet az Event Hubsból az Azure Monitor-naplókba.
Következő lépések
További információ a következőről:
- Hozzon létre egy egyéni táblát.
- Adatgyűjtési végpont létrehozása.
- Meglévő adatgyűjtési szabály frissítése.