Aracılığıyla paylaş


Azure Event Grid ad alanı konularına aboneliklerde işleyici hedefi olarak Azure Event hubs

Olay işleyicisi, olayın gönderildiği yerdir. İşleyici olayı işlemek için bir eylemde bulunur. Ad alanı konuları için desteklenen olay işleyicilerinin listesi aşağıdadır:

Çözümünüz Event Grid'den olayları işleyene kadar daha hızlı aldığında Event Hubs'ı kullanın. Olaylar bir olay hub'ına eklendikten sonra, uygulamanız olay hub'ından olayları kendi zamanlamasına göre işleyebilir. Gelen olayları işlemek için olay işlemenizi ölçeklendikleyebilirsiniz.

İleti üst bilgileri

Event Hubs'a gönderilen bir olayın veya iletinin üst bilgisinde aldığınız özellikler şunlardır:

Özellik adı Açıklama
aeg-subscription-name Olay aboneliğinin adı.
aeg-delivery-count Olay için yapılan deneme sayısı.
aeg-output-event-id Sistem tarafından oluşturulan olay kimliği.
aeg-compatibility-mode-enabled Bu özellik yalnızca Event Grid ad alanları aracılığıyla teslim edilirken kullanılabilir ve ayarlanır. Şu anda tek olası değer false'tur. Olay işleyicilerinin Event Grid ad alanları ile Event Grid özel konuları/sistem konuları/iş ortağı ad alanları vb. aracılığıyla teslim edilen olayları ayırt etmesine yardımcı olmak için tasarlanmıştır.
aeg-metadata-version Olayın meta veri sürümü. Bulut olay şemasının belirtim sürümünü temsil eder.

REST örnekleri

Sistem tarafından atanan kimliği kullanan olay işleyicisi olarak Event Hubs ile olay aboneliği

{
  "properties": {
    "deliveryConfiguration": {
      "deliveryMode": "Push",
      "push": {
        "deliveryWithResourceIdentity": {
          "identity": {
            "type": "SystemAssigned"
          },
          "destination": {
            "endpointType": "EventHub",
            "properties": {
              "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace-name}/eventhubs/{eventhub-name}"
            }
          }
        }
      }
    }
  }
}

Kullanıcı tarafından atanan kimliği kullanan olay işleyicisi olarak Event Hubs ile olay aboneliği

{
  "properties": {
    "deliveryConfiguration": {
      "deliveryMode": "Push",
      "push": {
        "deliveryWithResourceIdentity": {
          "identity": {
            "type": "UserAssigned",
            "userAssignedIdentities": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/{resource-group}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{user-identity-name}"
          },
          "destination": {
            "endpointType": "EventHub",
            "properties": {
              "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace-name}/eventhubs/{eventhub-name}"
            }
          }
        }
      }
    }
  }
}

Bir Event Hubs olay işleyicisinde yapılandırılan kilitlenme hedefi olan olay aboneliği

{
  "properties": {
    "deliveryConfiguration": {
      "deliveryMode": "Push",
      "push": {
        "deliveryWithResourceIdentity": {
          "identity": {
            "type": "UserAssigned",
            "userAssignedIdentities": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/{resource-group}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{user-identity-name}"
          },
          "destination": {
            "endpointType": "EventHub",
            "properties": {
              "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace-name}/eventhubs/{eventhub-name}"
            }
          }
        },
        "deadLetterDestinationWithResourceIdentity": {
          "identity": {
            "type": "UserAssigned",
            "userAssignedIdentities": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/{resource-group}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{user-identity-name}"
          },
          "deadLetterDestination": {
            "endpointType": "StorageBlob",
            "properties": {
              "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-account-name}",
              "blobContainerName": "{blob-container-name}"
            }
          }
        }
      }
    }
  }
}

Event Hubs olay işleyicisinde yapılandırılmış teslim özelliklerine sahip olay aboneliği

{
  "properties": {
    "deliveryConfiguration": {
      "deliveryMode": "Push",
      "push": {
        "deliveryWithResourceIdentity": {
          "identity": {
            "type": "SystemAssigned"
          },
          "destination": {
            "endpointType": "EventHub",
            "properties": {
              "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace-name}/eventhubs/{eventhub-name}",
              "deliveryAttributeMappings": [
                {
                  "name": "somestaticname",
                  "type": "Static",
                  "properties": {
                    "value": "somestaticvalue"
                  }
                },
                {
                  "name": "somedynamicname",
                  "type": "Dynamic",
                  "properties": {
                    "sourceField": "subject"
                  }
                }
              ]
            }
          }
        }
      }
    }
  }
}

Event Hubs'a özgü teslim özellikleri

Olay abonelikleri, teslim edilen olaylara dahil edilen HTTP üst bilgilerini ayarlamanıza olanak tanır. Bu özellik, hedefin gerektirdiği özel üst bilgileri ayarlamanıza olanak tanır. Azure Event Hubs'a teslim edilen olaylar üzerinde özel üst bilgiler ayarlayabilirsiniz.

Olayları bir olay hub'ı içindeki belirli bir bölüme yayımlamanız gerekiyorsa, hedef olay hub'ı bölümünü tanımlayan bölüm anahtarını belirtmek için olay aboneliğinizdeki özelliğini ayarlayın PartitionKey .

Üst bilgi adı Üst bilgi türü
PartitionKey Statik veya dinamik

Daha fazla bilgi için bkz . Ad alanları üzerinde özel teslim özellikleri.

Azure portal

Olay teslim modu Gönderme olarak ayarlanmış bir olay aboneliği oluştururken, olay işleyicisi türü olarak Event Hubs'ı seçebilir ve bir olay hub'ını işleyici olarak yapılandırabilirsiniz.

Teslim modu için Gönderme seçeneğinin seçili olduğu Abonelik Oluştur sayfasını gösteren ekran görüntüsü.

Adım adım yönergeler için bkz . Event Hubs'ı ad alanı konuları için bir hedef olarak kullanma.

Azure CLI

Adım adım yönergeler için bkz . Event Hubs'ı hedef yapılandırma.

Sonraki adımlar