Azure 事件中樞作為訂閱 Azure 事件方格命名空間主題中的處理常式目的地
事件處理常式是傳送事件的位置。 處理常式會採取相關動作來處理事件。 以下是命名空間主題支援的事件處理常式清單:
從事件方格解決方案收到事件的速度比處理事件的速度更快時,請使用事件中樞。 事件位於事件中樞內之後,應用程式就可以依自己的排程處理事件中樞的事件。 您可以調整事件流程來處理傳入事件。
訊息標頭
以下是您在傳送至事件中樞的事件或訊息標頭中收到的屬性:
屬性名稱 | 描述 |
---|---|
aeg-subscription-name |
事件訂閱的名稱。 |
aeg-delivery-count |
對事件進行的嘗試次數。 |
aeg-output-event-id |
系統產生的事件標識碼。 |
aeg-compatibility-mode-enabled |
只有在透過事件方格命名空間傳遞時,才能使用與設定此屬性。 目前,唯一可能的值為 false。 其旨在協助事件處理常式區分透過事件方格命名空間傳遞的事件與事件方格自訂主題/系統主題/合作夥伴命名空間等。 |
aeg-metadata-version |
事件的中繼資料版本。 表示雲端事件結構描述的規格版本。 |
REST 範例
使用系統指派的身分識別,以事件中樞作為事件處理常式的事件訂用帳戶
{
"properties": {
"deliveryConfiguration": {
"deliveryMode": "Push",
"push": {
"deliveryWithResourceIdentity": {
"identity": {
"type": "SystemAssigned"
},
"destination": {
"endpointType": "EventHub",
"properties": {
"resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace-name}/eventhubs/{eventhub-name}"
}
}
}
}
}
}
}
使用使用者指派的身分識別,以事件中樞作為事件處理常式的事件訂用帳戶
{
"properties": {
"deliveryConfiguration": {
"deliveryMode": "Push",
"push": {
"deliveryWithResourceIdentity": {
"identity": {
"type": "UserAssigned",
"userAssignedIdentities": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/{resource-group}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{user-identity-name}"
},
"destination": {
"endpointType": "EventHub",
"properties": {
"resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace-name}/eventhubs/{eventhub-name}"
}
}
}
}
}
}
}
使用在事件中樞事件處理常式上設定之無效目的地的事件訂用帳戶
{
"properties": {
"deliveryConfiguration": {
"deliveryMode": "Push",
"push": {
"deliveryWithResourceIdentity": {
"identity": {
"type": "UserAssigned",
"userAssignedIdentities": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/{resource-group}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{user-identity-name}"
},
"destination": {
"endpointType": "EventHub",
"properties": {
"resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace-name}/eventhubs/{eventhub-name}"
}
}
},
"deadLetterDestinationWithResourceIdentity": {
"identity": {
"type": "UserAssigned",
"userAssignedIdentities": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/{resource-group}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{user-identity-name}"
},
"deadLetterDestination": {
"endpointType": "StorageBlob",
"properties": {
"resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-account-name}",
"blobContainerName": "{blob-container-name}"
}
}
}
}
}
}
}
使用在事件中樞事件處理常式上設定之傳遞屬性的事件訂用帳戶
{
"properties": {
"deliveryConfiguration": {
"deliveryMode": "Push",
"push": {
"deliveryWithResourceIdentity": {
"identity": {
"type": "SystemAssigned"
},
"destination": {
"endpointType": "EventHub",
"properties": {
"resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/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"
}
}
]
}
}
}
}
}
}
}
事件中樞特定的傳遞屬性
事件訂閱可讓您設定傳遞事件中包含的 HTTP 標頭。 這項功能可讓您設定目的地所需的自訂標頭。 您可以在傳遞至 Azure 事件中樞的事件上設定自訂標頭。
如果您需要將事件發佈至事件中樞內的特定分割區,請在事件訂閱上設定 PartitionKey
屬性,以指定可識別目標事件中樞分割區的分割區索引鍵。
標頭名稱 | 標頭類型 |
---|---|
PartitionKey |
靜態或動態 |
如需詳細資訊,請參閱命名空間上的自訂傳遞屬性。
Azure 入口網站
將事件傳遞模式設為推送的情況下,在建立事件訂用帳戶時,您可以選取將事件中樞作為事件處理常式的類型,並將事件中樞設為處理常式。
如需逐步指示,請參閱使用事件中樞作為命名空間目的地主題。
Azure CLI
如需逐步指示,請參閱為事件中樞設定目的地。