Szybki start: kierowanie zdarzeń Azure Cache for Redis do internetowego punktu końcowego za pomocą programu PowerShell
Azure Event Grid to usługa obsługi zdarzeń dla chmury. W tym przewodniku Szybki start użyjesz Azure PowerShell, aby zasubskrybować zdarzenia Azure Cache for Redis, wyzwolić zdarzenie i wyświetlić wyniki.
Zazwyczaj użytkownik wysyła zdarzenia do punktu końcowego, w którym następuje przetwarzanie danych zdarzenia i są wykonywane akcje. Jednak aby uprościć ten przewodnik Szybki start, będziesz wysyłać zdarzenia do aplikacji internetowej, która będzie zbierać i wyświetlać komunikaty. Po wykonaniu kroków opisanych w tym przewodniku Szybki start zobaczysz, że dane zdarzenia zostały wysłane do aplikacji internetowej.
Konfigurowanie
Ten przewodnik Szybki start wymaga korzystania z najnowszej wersji Azure PowerShell. Jeśli konieczna będzie instalacja lub uaktualnienie, zobacz Instalowanie i konfigurowanie programu Azure PowerShell.
Logowanie do platformy Azure
Zaloguj się do subskrypcji platformy Azure za Connect-AzAccount
pomocą polecenia i postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby się uwierzytelnić.
Connect-AzAccount
W tym przykładzie użyto opcji westus2 i zapisano wybór w zmiennej do użycia w całej.
$location = "westus2"
Tworzenie grupy zasobów
Tematy usługi Event Grid są wdrażane jako poszczególne zasoby platformy Azure i muszą być aprowizowane w ramach grupy zasobów platformy Azure. Grupa zasobów to logiczna kolekcja, w której są wdrażane i zarządzane zasoby platformy Azure.
Utwórz grupę zasobów za pomocą polecenia New-AzResourceGroup.
Poniższy przykład obejmuje tworzenie grupy zasobów o nazwie gridResourceGroup w lokalizacji westus2.
$resourceGroup = "gridResourceGroup"
New-AzResourceGroup -Name $resourceGroup -Location $location
Tworzenie wystąpienia pamięci podręcznej Azure Cache for Redis
New-AzRedisCache
-ResourceGroupName <String>
-Name <String>
-Location <String>
[-Size <String>]
[-Sku <String>]
[-RedisConfiguration <Hashtable>]
[-EnableNonSslPort <Boolean>]
[-TenantSettings <Hashtable>]
[-ShardCount <Int32>]
[-MinimumTlsVersion <String>]
[-SubnetId <String>]
[-StaticIP <String>]
[-Tag <Hashtable>]
[-Zone <String[]>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Aby uzyskać więcej informacji na temat tworzenia wystąpienia pamięci podręcznej w programie PowerShell, zobacz dokumentację Azure PowerShell.
Tworzenie punktu końcowego komunikatów
Przed zasubskrybowaniem tematu utwórzmy punkt końcowy dla komunikatów o zdarzeniach. Zazwyczaj w punkcie końcowym akcje są wykonywane na podstawie danych zdarzenia. Aby uprościć ten przewodnik Szybki Start, wdrożysz wstępnie zbudowaną aplikację sieci Web, która będzie wyświetlać komunikaty o zdarzeniach. Wdrożone rozwiązanie zawiera plan usługi App Service, aplikację internetową usługi App Service i kod źródłowy z repozytorium GitHub.
Zastąp <your-site-name>
unikatową nazwą aplikacji internetowej. Nazwa aplikacji internetowej musi być unikatowa, ponieważ stanowi część wpisu DNS.
$sitename="<your-site-name>"
New-AzResourceGroupDeployment `
-ResourceGroupName $resourceGroup `
-TemplateUri "https://raw.githubusercontent.com/Azure-Samples/azure-event-grid-viewer/main/azuredeploy.json" `
-siteName $sitename `
-hostingPlanName viewerhost
Wdrożenie może potrwać kilka minut. Po pomyślnym wdrożeniu należy wyświetlić aplikację sieci Web i upewnić się, że jest uruchomiona. W przeglądarce sieci Web przejdź do: https://<your-site-name>.azurewebsites.net
Powinna być widoczna witryna internetowa bez żadnych aktualnie wyświetlanych komunikatów.
Subskrybowanie zdarzenia Azure Cache for Redis
W tym kroku zasubskrybujesz temat, aby poinformować usługę Event Grid o zdarzeniach, które chcesz śledzić. Poniższy przykład subskrybuje utworzone wystąpienie pamięci podręcznej i przekazuje adres URL z aplikacji internetowej jako punkt końcowy powiadomienia o zdarzeniach. Punkt końcowy dla aplikacji internetowej musi zawierać sufiks /api/updates/
.
$cacheId = (Get-AzRedisCache -ResourceGroupName $resourceGroup -Name $cacheName).Id
$endpoint="https://$sitename.azurewebsites.net/api/updates"
New-AzEventGridSubscription `
-EventSubscriptionName <event_subscription_name> `
-Endpoint $endpoint `
-ResourceId $cacheId
Wyświetl aplikację sieci Web ponownie i zwróć uwagę, że zdarzenie sprawdzania poprawności subskrypcji zostało do niej wysłane. Wybierz ikonę oka, aby rozwinąć dane zdarzenia. Usługa Event Grid wysyła zdarzenie weryfikacji, aby w punkcie końcowym mogło nastąpić sprawdzenie, czy dane zdarzenia mają być odbierane. Aplikacja internetowa zawiera kod do sprawdzania poprawności subskrypcji.
Wyzwalanie zdarzenia z Azure Cache for Redis
Teraz wyzwólmy zdarzenie, aby zobaczyć, jak usługa Event Grid dystrybuuje komunikat do punktu końcowego.
Import-AzRedisCache
[-ResourceGroupName <String>]
-Name <String>
-Files <String[]>
[-Format <String>]
[-Force]
[-PassThru]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Aby uzyskać więcej informacji na temat importowania w programie PowerShell, zobacz dokumentację Azure PowerShell.
Zdarzenie zostało wyzwolone, a usługa Event Grid wysłała komunikat do punktu końcowego skonfigurowanego podczas subskrybowania. Wyświetl aplikację sieci Web, aby wyświetlić właśnie wysłane zdarzenie.
[{
"id": "e1ceb52d-575c-4ce4-8056-115dec723cff",
"eventType": "Microsoft.Cache.ImportRDBCompleted",
"topic": "/subscriptions/{subscription_id}/resourceGroups/{resource_group_name}/providers/Microsoft.Cache/Redis/{cache_name}",
"data": {
"name": "ImportRDBCompleted",
"timestamp": "2020-12-10T18:07:54.4937063+00:00",
"status": "Succeeded"
},
"subject": "ImportRDBCompleted",
"dataversion": "1.0",
"metadataVersion": "1",
"eventTime": "2020-12-10T18:07:54.4937063+00:00"
}]
Czyszczenie zasobów
Jeśli planujesz kontynuować pracę z tym wystąpieniem i subskrypcją zdarzeń Azure Cache for Redis, nie usuwaj zasobów utworzonych w tym przewodniku Szybki start. Jeśli nie planujesz kontynuować, użyj następującego polecenia, aby usunąć zasoby utworzone w tym przewodniku Szybki start.
Remove-AzResourceGroup -Name $resourceGroup
Następne kroki
Teraz, gdy wiesz, jak tworzyć tematy i subskrypcje zdarzeń, dowiedz się więcej o zdarzeniach Azure Cache for Redis i o tym, co usługa Event Grid może ułatwić: