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 kullanarak bir Event Grid özel konusu ve bu konu için bir Kuyruk Depolama aboneliği oluşturacaksınız. Ardından özel konuya örnek olaylar gönderir ve bu olayların bir kuyruğa teslim olduğunu doğrularsınız.
Azure Event Grid , uygulamaları olaylar aracılığıyla tümleştirmek için kullanabileceğiniz yüksek oranda ölçeklenebilir ve sunucusuz bir olay aracısıdır. Event Grid, Olayları Azure Kuyruk depolama gibi desteklenen olay işleyicilerine teslim eder. Daha fazla bilgi için bkz . Olay işleyicileri.
Azure hesabınız yoksa, başlamadan önce ücretsiz hesap oluşturun.
Kaynak grubu oluşturma
Event Grid konuları Azure kaynaklarıdır. Bunları bir Azure kaynak grubuna yerleştirin. Kaynak grubu, Azure kaynaklarının dağıtıldığı ve yönetildiği mantıksal bir koleksiyondur.
az group create komutunu kullanarak bir kaynak grubu oluşturun. Aşağıdaki örnek gridResourceGroup konumunda westus2 adlı bir kaynak grubu oluşturur.
Sağ bölmede Azure Cloud Shell'i açmak için Cloud Shell'i Aç'ı seçin. Kopyala düğmesini seçerek komutu kopyalayın, Cloud Shell'e yapıştırın ve ardından Enter tuşunu seçerek komutu çalıştırın.
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"registrationStateRegisteredolduğu zaman devam edebilirsiniz.
Ö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 örnekte özel konu, kaynak grubunuzda oluşturulur.
<TOPIC NAME> değerini özel konunuz için benzersiz bir adla değiştirin. Bir Etki Alanı Adı Sistemi (DNS) girdisi bunu temsil ettiğinden Event Grid konu adı benzersiz olmalıdır.
Konu için bir ad belirtin:
topicname="<TOPIC NAME>"Konuyu oluşturmak için aşağıdaki komutu çalıştırın:
az eventgrid topic create --name $topicname --location westus2 --resource-group gridResourceGroup
Kuyruk oluştur
Özel konuya abone olmadan önce olay iletisi için uç noktayı oluşturun. Olayları toplamak için bir kuyruk oluşturursunuz.
Azure depolama hesabı için benzersiz bir ad belirtin:
storagename="<STORAGE ACCOUNT NAME>"Depolama alanında bir depolama hesabı ve kuyruk (adlı
eventqueue) oluşturmak için aşağıdaki komutları çalıştırın:queuename="eventqueue" az storage account create --name $storagename --resource-group gridResourceGroup --location westus2 --sku Standard_LRS key="$(az storage account keys list --account-name $storagename --query "[0].{value:value}" --output tsv)" az storage queue create --name $queuename --account-name $storagename --account-key $key
Özel konuya abone olma
Aşağıdaki örnek, oluşturduğunuz özel konuya abonedir. Uç nokta için kuyruğun kaynak kimliğini geçirir. Azure CLI ile kuyruk kimliğini uç nokta olarak geçirirsiniz. Uç nokta şu biçimdedir:
/subscriptions/<AZURE SUBSCRIPTION ID>/resourcegroups/<RESOURCE GROUP NAME>/providers/Microsoft.Storage/storageAccounts/<STORAGE ACCOUNT NAME>/queueservices/default/queues/<QUEUE NAME>
Aşağıdaki betik, kuyruk için depolama hesabının kaynak kimliğini alır. Kuyruk kimliğini oluşturur ve bir Event Grid konusuna abone olur. Uç nokta türünü storagequeue olarak ayarlar ve uç nokta için kuyruk kimliğini kullanır.
Komutu çalıştırmadan önce, son kullanma tarihiyer tutucuyu yıl, ay ve gün için gerçek bir değerle değiştirin.
storageid=$(az storage account show --name $storagename --resource-group gridResourceGroup --query id --output tsv)
queueid="$storageid/queueservices/default/queues/$queuename"
topicid=$(az eventgrid topic show --name $topicname --resource-group gridResourceGroup --query id --output tsv)
az eventgrid event-subscription create \
--source-resource-id $topicid \
--name mystoragequeuesubscription \
--endpoint-type storagequeue \
--endpoint $queueid \
--expiration-date "<yyyy-mm-dd>"
Olay aboneliğini oluşturan hesabın kuyruğa yazma erişimi olmalıdır. Abonelik için bir sona erme tarihi ayarlanır.
Aboneliği oluşturmak için REST API kullanırsanız, depolama hesabının kimliğini ve kuyruğun adını ayrı bir parametre olarak geçirirsiniz:
"destination": {
"endpointType": "storagequeue",
"properties": {
"queueName":"eventqueue",
"resourceId": "/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/Microsoft.Storage/storageAccounts/<storage-name>"
}
...
Özel konunuza olay gönderme
Event Grid'in iletiyi uç noktanıza nasıl dağıttığnı görmek için bir olay tetikleme. İlk olarak, özel konunun URL'sini ve anahtarını alın:
endpoint=$(az eventgrid topic show --name $topicname --resource-group gridResourceGroup --query "endpoint" --output tsv)
key=$(az eventgrid topic key list --name $topicname --resource-group gridResourceGroup --query "key1" --output tsv)
Kolaylık olması için bu makalede özel konuya göndermek için örnek olay verileri kullanılmaktadır. Genellikle bir uygulama veya Azure hizmeti olay verilerini gönderir.
cURL aracı HTTP istekleri gönderir. Bu makalede, olayı özel konuya göndermek için cURL kullanacaksınız. Aşağıdaki örnek Event Grid konusuna üç olay gönderir:
for i in 1 2 3
do
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"} ]'
curl -X POST -H "aeg-sas-key: $key" -d "$event" $endpoint
done
Event Grid'in bu üç olayı kuyruğa gönderdiğini görmek için Azure portalındaki kuyruğa gidin.
Kaynakları temizleme
Bu olayla çalışmaya devam etmek istiyorsanız, bu makalede oluşturduğunuz kaynakları kaldırmayın. Aksi takdirde, kaynakları silmek için aşağıdaki komutu kullanın:
az group delete --name gridResourceGroup
İ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
- Azure Blob Depolama olaylarını özel bir web uç noktasına yönlendirme
- Azure Event Grid ve Logic Apps ile sanal makine değişikliklerini izleme
- Event Hubs tarafından yakalanan verileri Azure Depolama'dan Azure Synapse Analytics'e taşıma
Event Grid'de çeşitli programlama dillerini kullanarak olay yayımlama ve olay kullanma hakkında bilgi edinmek için aşağıdaki örneklere bakın: