Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu hızlı başlangıçta, Azure CLI'yı kullanarak Azure Event Grid'te özel bir konu oluşturuyor, özel konuya abone oluyor ve sonucu görüntülemek için örnek bir olay tetikliyorsun.
Normalde olayları, olay verilerini işleyen ve eylemler gerçekleştiren bir uç noktaya gönderirsiniz. Ancak bu hızlı başlangıç'ı basitleştirmek için, mesajları toplayan ve gösteren bir web uygulamasına örnek olaylar gönderirsiniz. Bitirdiğinizde, web uygulamasında aşağıdaki görselde gösterildiği gibi etkinlik verilerini görürsünüz:
Azure hesabınız yoksa, başlamadan önce ücretsiz hesap oluşturun.
Önkoşullar
Azure Cloud Shell'de Bash ortamını kullanın. Daha fazla bilgi için bkz. Azure Cloud Shell'i kullanmaya başlama.
CLI başvuru komutlarını yerel olarak çalıştırmayı tercih ediyorsanız Azure CLI'yı yükleyin . Windows veya macOS üzerinde çalışıyorsanız Azure CLI’yi bir Docker kapsayıcısında çalıştırmayı değerlendirin. Daha fazla bilgi için bkz . Docker kapsayıcısında Azure CLI'yi çalıştırma.
Yerel yükleme kullanıyorsanız az login komutunu kullanarak Azure CLI ile oturum açın. Kimlik doğrulama işlemini tamamlamak için terminalinizde görüntülenen adımları izleyin. Diğer oturum açma seçenekleri için bkz. Azure CLI kullanarak Azure'da kimlik doğrulaması.
İstendiğinde, ilk kullanımda Azure CLI uzantısını yükleyin. Uzantılar hakkında daha fazla bilgi için bkz. Azure CLI ile uzantıları kullanma ve yönetme.
Yüklü sürümü ve bağımlı kitaplıkları bulmak için az version komutunu çalıştırın. En son sürüme yükseltmek için az upgrade komutunu çalıştırın.
- Bu hızlı başlatma, Azure CLI'nın 2.0.70 veya daha yeni sürümünü gerektirir. Azure Cloud Shell kullanıyorsanız en son sürüm zaten yüklüdür.
- Azure Event Grid'e yeniyseniz, bu hızlı başlangıç'a başlamadan önce hizmetin genel bir özetini görmek için What's Azure Event Grid bölümüne bakabilirsiniz.
Kaynak grubu oluşturma
Event Grid konuları, Azure kaynak grubuna yerleştirmeniz gereken Azure kaynaklarıdır. Kaynak grubu, Azure kaynaklarını dağıtıp yönettiğiniz mantıksal bir koleksiyondur.
az group create komutuyla bir kaynak grubu oluşturun. Aşağıdaki örnek westus2 konumunda gridResourceGroup adlı bir kaynak grubu oluşturur. İsterseniz kaynak grubunun adını ve konumunu değiştirin.
az group create --name gridResourceGroup --location westus2
Event Grid kaynak sağlayıcısını etkinleştirme
Azure aboneliğinizde Event Grid'i ilk kez kullanıyorsanız Event Grid kaynak sağlayıcısını kaydetmeniz gerekebilir. Sağlayıcıyı kaydetmek için şu komutu çalıştırın:
az provider register --namespace Microsoft.EventGridKaydın tamamlanması biraz zaman alabilir. Durumu denetlemek için aşağıdaki komutu çalıştırın:
az provider show --namespace Microsoft.EventGrid --query "registrationState"registrationState,Registeredolduğunda devam etmeye hazırsınız.
Özel konu oluşturma
Event Grid konusu, olaylarınızı gönderdiğiniz kullanıcı tanımlı bir uç nokta sağlar. Aşağıdaki örnek, Azure Cloud Shell'te Bash kullanarak kaynak grubunuzda özel konu oluşturur.
<your-topic-name> değerini konunuz için benzersiz bir adla değiştirin. Özel konu adı, Etki Alanı Adı Sistemi (DNS) girişinin bir parçası olduğundan benzersiz olmalıdır. Ayrıca, 3-50 karakter arasında olmalı ve sadece a-z, A-Z, 0-9 ve "-" değerleri içermelidir
Aşağıdaki komutu kopyalayın, konu için bir isim belirleyin ve komutu çalıştırmak için Enter tuşunu seçin.
topicname=<your-topic-name>az eventgrid topic createÖzel bir konu oluşturmak için komutunu kullanın.az eventgrid topic create --name $topicname -l westus2 -g gridResourceGroup
İleti uç noktası oluşturma
Özel konuya abone olmadan önce olay iletisi için uç noktayı oluşturun. Normalde, olay verileri temelinde uç nokta eylemleri gerçekleştirir. Bu hızlı başlangıç'ı basitleştirmek için, etkinlik mesajlarını gösteren önceden hazırlanmış bir web uygulaması dağıtın. Dağıtılan çözüm bir App Service planı, App Service web uygulaması ve GitHub'dan kaynak kod içerir.
Aşağıdaki komutu kopyalayın, web uygulaması için bir isim belirleyin (Event Grid Viewer örneği) ve komutu çalıştırmak için Enter tuşunu seçin.
<your-site-name>değerini web uygulamanız için benzersiz bir adla değiştirin. Web uygulaması adı bir DNS girdisinin parçası olduğundan benzersiz olmalıdır.sitename=<your-site-name>Web uygulamasını bir Azure Resource Manager şablonu kullanarak dağıtmak için çalıştırın
az deployment group create.az deployment group create \ --resource-group gridResourceGroup \ --template-uri "https://raw.githubusercontent.com/Azure-Samples/azure-event-grid-viewer/main/azuredeploy.json" \ --parameters siteName=$sitename hostingPlanName=viewerhost
Dağıtımın tamamlanması birkaç dakika sürebilir. Dağıtım başarılı olduktan sonra çalıştığından emin olmak için web uygulamanızı görüntüleyin. Web tarayıcısında şu adrese gidin: https://<your-site-name>.azurewebsites.net
Siteyi hiç mesaj göstermeden görmelisiniz.
Özel konuya abone olma
Event Grid'e hangi olayları izlemek istediğinizi ve bu olayları nereye gönderebileceğinizi bildirmek için bir Event Grid konusuna abone olabilirsiniz. Aşağıdaki örnek, oluşturduğunuz özel konuya abone olur ve web uygulamanızın URL’sini olay bildirimi için uç nokta olarak geçirir.
Web uygulamanızın uç noktası /api/updates/ sonekini içermelidir.
Aşağıdaki komutu kopyalayın,
$sitenameyerine önceki adımda oluşturduğunuz web uygulamasının adını yazın ve komutu çalıştırmak için Enter tuşunu seçin.endpoint=https://$sitename.azurewebsites.net/api/updatesOluşturduğunuz konunun kaynak kimliğini almak için aşağıdaki komutu çalıştırın.
topicresourceid=$(az eventgrid topic show --resource-group gridResourceGroup --name $topicname --query "id" --output tsv)Uç noktayı kullanarak özel konuya abonelik oluşturmak için aşağıdaki komutu çalıştırın.
az eventgrid event-subscription create \ --source-resource-id $topicresourceid \ --name demoViewerSub \ --endpoint $endpointWeb uygulamanızı yeniden görüntüleyin ve buna bir abonelik doğrulama olayının gönderildiğine dikkat edin. Göz simgesini seçerek olay verilerini genişletin. Uç noktanın olay verilerini almak istediğini doğrulayabilmesi için Event Grid doğrulama olayını gönderir. Web uygulaması aboneliği doğrulamak için kod içerir.
Özel konunuza olay gönderme
Event Grid’in iletiyi uç noktanıza nasıl dağıttığını görmek için bir olay tetikleyelim. İlk olarak, özel konunun URL'sini ve anahtarını alın.
endpoint=$(az eventgrid topic show --name $topicname -g gridResourceGroup --query "endpoint" --output tsv)
key=$(az eventgrid topic key list --name $topicname -g gridResourceGroup --query "key1" --output tsv)
Bu hızlı başlangıç'ı basitleştirmek için, özel konuya göndermek için örnek olay verisi kullanın. Genellikle bir uygulama veya Azure hizmeti olay verilerini gönderir. Aşağıdaki örnek, örnek olay verilerini oluşturur:
event='[ {"id": "'"$RANDOM"'", "eventType": "recordInserted", "subject": "myapp/vehicles/motorcycles", "eventTime": "'`date +%Y-%m-%dT%H:%M:%S%z`'", "data":{ "make": "Ducati", "model": "Monster"},"dataVersion": "1.0"} ]'
JSON’un data öğesi, olayınızın yüküdür. Bu alana geçerli biçimdeki herhangi bir JSON girilebilir. Ayrıca, gelişmiş yönlendirme ve filtreleme için konu alanını da kullanabilirsiniz.
cURL, HTTP istekleri gönderen bir yardımcı programdır. Bu hızlı başlangıçta, etkinliği konuya göndermek için cURL kullanın.
curl -X POST -H "aeg-sas-key: $key" -d "$event" $endpoint
Olayı tetiklediniz, Event Grid ise mesajı abone olurken yapılandırdığınız uç noktaya gönderdi. Az önce gönderdiğiniz olayı görmek için web uygulamanızı görüntüleyin.
[{
"id": "1807",
"eventType": "recordInserted",
"subject": "myapp/vehicles/motorcycles",
"eventTime": "2017-08-10T21:03:07+00:00",
"data": {
"make": "Ducati",
"model": "Monster"
},
"dataVersion": "1.0",
"metadataVersion": "1",
"topic": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventGrid/topics/{topic}"
}]
Kaynakları temizleme
Bu etkinlikle veya etkinlik görüntüleyici uygulamasıyla çalışmaya devam etmeyi planlıyorsanız, bu hızlı başlangıçta oluşturduğunuz kaynakları temizlemeyin. Aksi takdirde, bu hızlı başlatmada oluşturduğunuz kaynakları silmek için aşağıdaki komutu kullanın.
az group delete --name gridResourceGroup --yes --no-wait
İlgili içerik
Artık konu oluşturma ve olay aboneliklerini öğrendiğinize göre, Event Grid’in size nasıl yardımcı olabileceği konusunda daha fazla bilgi edinebilirsiniz:
- Event Grid Hakkında
- Blob depolama olaylarını bir özel web uç noktasına yönlendirme
- Veri ambarına büyük veri akışı yapma
Event Grid'e olayların farklı programlama dillerinde yayınlanması ve tüketilmesi hakkında bilgi edinmek için aşağıdaki örneklere bakınız: