Kurz: Ingestování událostí ze služby Azure Event Hubs do protokolů služby Azure Monitor (Public Preview)
Azure Event Hubs je platforma pro streamování velkých objemů dat, která shromažďuje události z více zdrojů, které ingestují Azure a externí služby. Tento článek vysvětluje, jak ingestovat data přímo z centra událostí do pracovního prostoru služby Log Analytics.
V tomto kurzu se naučíte:
- Vytvoření cílové tabulky pro data centra událostí v pracovním prostoru služby Log Analytics
- Vytvoření koncového bodu shromažďování dat
- Vytvoření pravidla shromažďování dat
- Udělení oprávnění k pravidlu shromažďování dat centru událostí
- Přidružení pravidla shromažďování dat k centru událostí
Požadavky
Pokud chcete odesílat události ze služby Azure Event Hubs do protokolů služby Azure Monitor, potřebujete tyto prostředky:
Pracovní prostor služby Log Analytics, kde máte alespoň práva přispěvatele.
Váš pracovní prostor služby Log Analytics musí být propojený s vyhrazeným clusterem nebo musí mít úroveň závazku.
Obor názvů služby Event Hubs, který umožňuje přístup k veřejné síti. Pokud je zakázaný přístup k veřejné síti, ujistěte se, že možnost Povolit důvěryhodným služby Microsoft obejít tuto bránu firewall nastavenou na Ano.
Centrum událostí s událostmi Události můžete posílat do centra událostí pomocí kroků v kurzech pro odesílání a přijímání událostí ve službě Azure Event Hubs nebo konfigurací nastavení diagnostiky prostředků Azure.
Podporované oblasti
Azure Monitor v současné době podporuje příjem dat ze služby Event Hubs v těchto oblastech:
Amerika | Evropě | Střední východ | Afrika | Asie a Tichomoří |
---|---|---|---|---|
Brazílie – jih | Francie – střed | Spojené arabské emiráty – sever | Jižní Afrika – sever | Austrálie – střed |
Brazílie – jihovýchod | Severní Evropa | Austrálie – východ | ||
Střední Kanada | Norsko – východ | Austrálie – jihovýchod | ||
Kanada – východ | Švýcarsko – sever | Indie – střed | ||
East US | Švýcarsko – západ | Východní Asie | ||
USA – východ 2 | Velká Británie – jih | Japonsko – východ | ||
Středojižní USA | Spojené království – západ | Jio – západní Indie | ||
USA – západ | Západní Evropa | Jižní Korea – střed | ||
USA – západ 3 | Southeast Asia |
Musíte vytvořit přidružení pravidla shromažďování dat (DCRA) ve stejné oblasti jako centrum událostí. Pracovní prostor služby Log Analytics může být v libovolné oblasti, ale pravidlo shromažďování dat (DCR) a koncový bod shromažďování dat (DCE) musí být ve stejné oblasti jako pracovní prostor služby Log Analytics.
Pro minimální latenci doporučujeme umístit všechny prostředky do stejné oblasti.
Shromáždění požadovaných informací
V následujících krocích potřebujete ID předplatného, název skupiny prostředků, název pracovního prostoru, ID prostředku pracovního prostoru a ID prostředku centra událostí:
V nabídce Pracovních prostorů služby Log Analytics přejděte do svého pracovního prostoru a vyberte Vlastnosti a zkopírujte ID předplatného, skupinu prostředků a název pracovního prostoru. Tyto podrobnosti budete potřebovat k vytvoření prostředků v tomto kurzu.
Výběrem kódu JSON otevřete obrazovku JSON prostředku a zkopírujte ID prostředku pracovního prostoru. K vytvoření pravidla shromažďování dat budete potřebovat ID prostředku pracovního prostoru.
Přejděte do instance centra událostí, výběrem KÓDU JSON otevřete obrazovku RESOURCE JSON a zkopírujte ID prostředku instance centra událostí. K přidružení pravidla shromažďování dat k centru událostí budete potřebovat ID prostředku instance centra událostí.
Vytvoření cílové tabulky v pracovním prostoru služby Log Analytics
Než budete moct ingestovat data, musíte nastavit cílovou tabulku. Data můžete ingestovat do vlastních tabulek a podporovaných tabulek Azure.
Pokud chcete vytvořit vlastní tabulku, do které se mají ingestovat události, na webu Azure Portal:
Vyberte tlačítko Cloud Shell a ujistěte se, že je prostředí nastavené na PowerShell.
Spuštěním tohoto příkazu PowerShellu vytvořte tabulku, zadejte název tabulky (
<table_name>
) ve formátu JSON (který má také příponu _CL v případě vlastní tabulky) a v příkazu nastavte<subscription_id>
,<resource_group_name>
<workspace_name>
, a<table_name>
hodnotyInvoke-AzRestMethod -Path
:$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
Důležité
- Názvy sloupců musí začínat písmenem a mohou obsahovat až 45 alfanumerických znaků a podtržítka (
_
). _ResourceId
,id
, ,_SubscriptionId
_ResourceId
, ,TenantId
,Type
,UniqueId
aTitle
jsou vyhrazené názvy sloupců.- V názvech sloupců se rozlišují malá a velká písmena. Ujistěte se, že v pravidle shromažďování dat používáte správný případ.
Vytvoření koncového bodu shromažďování dat
Pokud chcete shromažďovat data pomocí pravidla shromažďování dat, potřebujete koncový bod shromažďování dat:
Vytvořte koncový bod shromažďování dat.
Důležité
Vytvořte koncový bod shromažďování dat ve stejné oblasti jako pracovní prostor služby Log Analytics.
Na obrazovce Přehled koncového bodu shromažďování dat vyberte Zobrazení JSON.
Zkopírujte ID prostředku pro pravidlo shromažďování dat. Tyto informace použijete v dalším kroku.
Vytvoření pravidla shromažďování dat
Azure Monitor používá pravidla shromažďování dat k definování dat, která se mají shromažďovat, jak tato data transformovat a kam se mají data odesílat.
Vytvoření pravidla shromažďování dat na webu Azure Portal:
Do vyhledávacího pole portálu zadejte šablonu a pak vyberte Nasadit vlastní šablonu.
Vyberte Vytvořit vlastní šablonu v editoru.
Vložte níže šablonu Resource Manageru do editoru a pak vyberte Uložit.
V pravidle shromažďování dat níže si všimněte následujících podrobností:
identity
– Definuje, jaký typ spravované identity se má použít. V našem příkladu používáme identitu přiřazenou systémem. Můžete také nakonfigurovat spravovanou identitu přiřazenou uživatelem.dataCollectionEndpointId
– ID prostředku koncového bodu shromažďování dat.streamDeclarations
– Definuje, která data se mají ingestovat z centra událostí (příchozí data). Deklaraci datového proudu nelze upravit.TimeGenerated
– Čas, kdy se data ingestovala z centra událostí do protokolů služby Azure Monitor.RawData
- Tělo události. Další informace najdete v tématu Čtení událostí.Properties
– Vlastnosti uživatele z události. Další informace najdete v tématu Čtení událostí.
datasources
– Určuje skupinu příjemců centra událostí a stream, do kterého ingestujete data.destinations
– Určuje všechny cíle, do kterých se budou data odesílat. Data můžete ingestovat do jednoho nebo několika pracovních prostorů služby Log Analytics.dataFlows
– Odpovídá datovému proudu s cílovým pracovním prostorem a určuje transformační dotaz a cílovou tabulku. V našem příkladu ingestujeme data do vlastní tabulky, kterou jsme vytvořili dříve. Můžete také ingestovat do podporované tabulky Azure.transformKql
– Určuje transformaci, která se použije u příchozích dat (deklarace datového proudu) před odesláním do pracovního prostoru. V našem příkladu jsme nastavilitransformKql
source
hodnotu , která neupravuje data ze zdroje žádným způsobem, protože mapujeme příchozí data na vlastní tabulku, kterou jsme vytvořili speciálně s odpovídajícím schématem. Pokud data ingestujete do tabulky s jiným schématem nebo před příjmem dat filtrujete, definujte transformaci shromažďování dat.
{ "$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'))]" } ] } } ] }
Na obrazovce Vlastní nasazení zadejte předplatné a skupinu prostředků, do které se uloží pravidlo shromažďování dat, a zadejte hodnoty parametrů definovaných v šabloně, včetně:
- Oblast – oblast pravidla shromažďování dat Automaticky vyplněno na základě vybrané skupiny prostředků.
- Název pravidla shromažďování dat – pojmenujte pravidlo.
- ID prostředku pracovního prostoru – Viz Shromažďování požadovaných informací.
- ID prostředku koncového bodu – Vygenerováno při vytváření koncového bodu shromažďování dat.
- Název tabulky – název cílové tabulky. V našem příkladu a pokaždé, když použijete vlastní tabulku, musí název tabulky končit příponou _CL. Pokud ingestujete data do tabulky Azure, zadejte název tabulky ( například
Syslog
– bez přípony). - Skupina příjemců – Ve výchozím nastavení je skupina příjemců nastavena na
$Default
hodnotu . V případě potřeby změňte hodnotu na jinou skupinu příjemců centra událostí.
Vyberte Zkontrolovat a vytvořit a pak vytvořit , až si prohlédnete podrobnosti.
Po dokončení nasazení rozbalte pole Podrobnosti o nasazení a výběrem pravidla shromažďování dat zobrazte jeho podrobnosti. Vyberte zobrazení JSON.
Zkopírujte ID prostředku pro pravidlo shromažďování dat. Tyto informace použijete v dalším kroku.
Konfigurace spravované identity přiřazené uživatelem (volitelné)
Pokud chcete nakonfigurovat pravidlo shromažďování dat tak, aby podporovalo identitu přiřazenou uživatelem, nahraďte v předchozím příkladu:
"identity": {
"type": "systemAssigned"
},
textem:
"identity": {
"type": "userAssigned",
"userAssignedIdentities": {
"<identity_resource_Id>": {
}
}
},
Hodnotu najdete <identity_resource_Id>
tak, že na webu Azure Portal přejdete k prostředku spravované identity přiřazené uživatelem, výběrem kódu JSON otevřete obrazovku JSON prostředku a zkopírujete ID prostředku spravované identity.
Ingestování dat protokolu do tabulky Azure (volitelné)
Příjem dat do podporované tabulky Azure:
V pravidle shromažďování dat změňte
outputStream
:Od:
"outputStream": "[concat('Custom-', parameters('tableName'))]"
Komu:
"outputStream": "outputStream": "[concat(Microsoft-', parameters('tableName'))]"
Definujte
transformKql
transformaci, která odesílá ingestované data do cílových sloupců v cílové tabulce Azure.
Udělení oprávnění centra událostí pravidlu shromažďování dat
Pomocí spravované identity můžete udělit libovolnému centru událostí nebo oboru názvů Event Hubs oprávnění k odesílání událostí do pravidla shromažďování dat a koncovému bodu shromažďování dat, který jste vytvořili. Když udělíte oprávnění k oboru názvů služby Event Hubs, zdědí všechna centra událostí v rámci oboru názvů oprávnění.
V centru událostí nebo oboru názvů služby Event Hubs na webu Azure Portal vyberte Řízení přístupu (IAM)>Přidat přiřazení role.
Vyberte Příjemce dat služby Azure Event Hubs a vyberte Další.
Vyberte Spravovanou identitu pro přiřazení přístupu a klikněte na Vybrat členy. Vyberte pravidlo shromažďování dat, vyhledejte pravidlo shromažďování dat podle názvu a klikněte na Vybrat.
Před uložením přiřazení role vyberte Zkontrolovat a přiřadit a ověřte podrobnosti.
Přidružení pravidla shromažďování dat k centru událostí
Posledním krokem je přidružení pravidla shromažďování dat k centru událostí, ze kterého chcete shromažďovat události.
Jedno pravidlo shromažďování dat můžete přidružit k několika centrem událostí, které sdílejí stejnou skupinu příjemců a ingestovat data do stejného datového proudu. Alternativně můžete ke každému centru událostí přidružit jedinečné pravidlo shromažďování dat.
Důležité
K ingestování dat z centra událostí musíte přidružit alespoň jedno pravidlo shromažďování dat. Když odstraníte všechna přidružení pravidel shromažďování dat související s centrem událostí, přestanete ingestovat data z centra událostí.
Vytvoření přidružení pravidla shromažďování dat na webu Azure Portal:
Do vyhledávacího pole webu Azure Portal zadejte šablonu a pak vyberte Nasadit vlastní šablonu.
Vyberte Vytvořit vlastní šablonu v editoru.
Vložte níže šablonu Resource Manageru do editoru a pak vyberte Uložit.
{ "$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')]" } } ] }
Na obrazovce Vlastní nasazení zadejte předplatné a skupinu prostředků, do které se uloží přidružení pravidla shromažďování dat, a pak zadejte hodnoty parametrů definovaných v šabloně, mezi které patří:
- Oblast – Vyplní se automaticky na základě vybrané skupiny prostředků.
- ID prostředku instance centra událostí – viz Shromáždění požadovaných informací.
- Název přidružení – pojmenujte přidružení.
- ID pravidla shromažďování dat – vygenerováno při vytváření pravidla shromažďování dat.
Vyberte Zkontrolovat a vytvořit a pak vytvořit , až si prohlédnete podrobnosti.
Kontrola přijatých událostí v cílové tabulce
Protokoly služby Azure Monitor ingestují všechny události, které existují v centru událostí v době vytvoření DCRA, za předpokladu, že jejich doba uchovávání nevypršela a všechny nové události.
Pokud chcete zkontrolovat ingestované události v cílové tabulce:
Přejděte do svého pracovního prostoru a vyberte Protokoly.
V editoru dotazů napište jednoduchý dotaz a vyberte Spustit:
<table_name>
Měli byste vidět události z centra událostí.
Vyčištění prostředků
V tomto kurzu jste vytvořili následující prostředky:
- Vlastní tabulka
- Koncový bod shromažďování dat
- Pravidlo shromažďování dat
- Přidružení pravidla shromažďování dat
Vyhodnoťte, jestli tyto prostředky stále potřebujete. Odstraňte prostředky, které nepotřebujete jednotlivě, nebo odstraňte všechny tyto prostředky najednou odstraněním skupiny prostředků. Prostředky, které necháte spuštěné, vám můžou stát peníze.
Pokud chcete zastavit ingestování dat z centra událostí, odstraňte všechna přidružení pravidel shromažďování dat související s centrem událostí nebo odstraňte samotná pravidla shromažďování dat. Tyto akce také resetují vytváření kontrolních bodů centra událostí.
Známé problémy a omezení
- Pokud převádíte předplatné mezi adresáři Microsoft Entra, musíte postupovat podle kroků popsaných v části Známé problémy se spravovanými identitami pro prostředky Azure a pokračovat v ingestování dat.
- Můžete ingestovat zprávy o až 64 kB ze služby Event Hubs do protokolů služby Azure Monitor.
Další kroky
Další informace o:
- Vytvořte vlastní tabulku.
- Vytvořte koncový bod shromažďování dat.
- Aktualizujte existující pravidlo shromažďování dat.