Özel teslim özellikleri

Olay abonelikleri, teslim edilen olaylara dahil edilen HTTP üst bilgilerini ayarlamanıza olanak tanır. Bu özellik, bir hedef için gereken özel üst bilgileri ayarlamanıza olanak tanır. Olay aboneliği oluştururken en fazla 10 üst bilgi ayarlayabilirsiniz. Her üst bilgi değeri 4.096 (4K) bayttan büyük olmamalıdır.

Aşağıdaki hedeflere teslim edilen olaylar üzerinde özel üst bilgiler ayarlayabilirsiniz:

  • Web kancaları
  • Azure Service Bus konuları ve kuyrukları
  • Azure Event Hubs
  • Azure Functions
  • Azure Relay Karma Bağlan ions

Azure portalında olay aboneliği oluştururken, özel HTTP üst bilgilerini ayarlamak için Teslim Özellikleri sekmesini kullanabilirsiniz. Bu sayfa, sabit ve dinamik üst bilgi değerleri ayarlamanıza olanak tanır.

Statik üst bilgi değerlerini ayarlama

Sabit değere sahip üst bilgileri ayarlamak için, ilgili alanlara üst bilginin adını ve değerini girin:

Delivery properties - static

Hassas veriler sağlarken Gizli mi? seçeneğini işaretlemek isteyebilirsiniz. Azure portalında hassas verilerin görünürlüğü kullanıcının RBAC iznine bağlıdır.

Dinamik üst bilgi değerlerini ayarlama

Bir üst bilginin değerini, gelen olaydaki bir özelliği temel alarak ayarlayabilirsiniz. Giden isteklerde üst bilgi için kullanılacak bir gelen olayın özellik değerine başvurmak için JsonPath söz dizimini kullanın. Yalnızca dize, sayı ve boole değerlerinin JSON değerleri desteklenir. Örneğin, olay verilerinde gelen olay özellik sisteminin değerini kullanarak Channel adlı üst bilginin değerini ayarlamak için olay aboneliğinizi aşağıdaki şekilde yapılandırın:

Delivery properties - dynamic

Azure CLI kullanma

--delivery-attribute-mapping komutunu kullanarak abonelik oluştururken parametresini az eventgrid event-subscription create kullanın. Bir örnek aşağıda verilmiştir:

az eventgrid event-subscription create -n es1 \
    --source-resource-id /subscriptions/{SubID}/resourceGroups/{RG}/providers/Microsoft.EventGrid/topics/topic1
    --endpoint-type storagequeue \
    --endpoint /subscriptions/{SubID}/resourceGroups/TestRG/providers/Microsoft.Storage/storageAccounts/sa1/queueservices/default/queues/q1 \
    --enable-advanced-filtering-on-arrays true
    --delivery-attribute-mapping staticproperty1 static somestaticvalue2 true 
    --delivery-attribute-mapping staticproperty2 static somestaticvalue3 false 
    --delivery-attribute-mapping dynamicproperty1 dynamic data.key1

Örnekler

Bu bölümde, teslim özelliklerini kullanmayla ilgili birkaç örnek verilmiştir.

Yetkilendirme üst bilgisini taşıyıcı belirteci ile ayarlama (normatif olmayan örnek)

web kancası işleyicinizle isteği tanımlamak için yetkilendirme üst bilgisine bir değer ayarlayın. Web kancanızı Microsoft Entra Kimliği ile korumuyorsanız Yetkilendirme üst bilgisi ayarlanabilir.

Üst bilgi adı Üst bilgi türü Üst bilgi değeri
Authorization Statik BEARER SlAV32hkKG...

Giden istekler artık olay aboneliğinde ayarlanan üst bilgiyi içermelidir:

POST /home.html HTTP/1.1
Host: acme.com

Authorization: BEARER SlAV32hkKG...

Dekont

Hedefiniz bir Web kancası olduğunda yetkilendirme üst bilgilerini tanımlama mantıklı bir seçenektir. Bu hedefler Event Grid ile kullanıldığında kendi kimlik doğrulama düzenlerini desteklediği için kaynak kimliği, Service Bus, Event Hubs ve Karma Bağlan ions ile abone olunan işlevler için kullanılmamalıdır.

Service Bus örneği

Azure Service Bus, tek ileti gönderirken aşağıdaki ileti özelliklerinin kullanılmasını destekler.

Üst bilgi adı Üst bilgi türü
MessageId Dinamik
PartitionKey Statik veya dinamik
SessionId Statik veya dinamik
CorrelationId Statik veya dinamik
Label Statik veya dinamik
ReplyTo Statik veya dinamik
ReplyToSessionId Statik veya dinamik
To Statik veya dinamik
ViaPartitionKey Statik veya dinamik

Dekont

  • varsayılan değeri MessageId Event Grid olayının iç kimliğidir. Geçersiz kılabilirsiniz. Örneğin, data.field.
  • Yalnızca veya MessageIdayarlayabilirsinizSessionId.

Service Bus kuyruklarına veya konu başlıklarına ileti gönderirken özel özellikler de belirtebilirsiniz. İleti üst bilgilerinde sistem özellikleri tarafından kullanıldığı için ön eki kullanmayın aeg- . İleti üst bilgisi özelliklerinin listesi için bkz. Olay işleyicisi olarak Service Bus

Event Hubs örneği

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

Ayrıca, bir olay hub'ına ileti gönderirken özel özellikler belirtebilirsiniz. İleti üst bilgilerinde aeg- sistem özellikleri tarafından kullanıldığından özellik adı için ön eki kullanmayın. İleti üst bilgisi özelliklerinin listesi için bkz . Olay işleyicisi olarak Event Hubs

Azure Depolama Kuyruklarına giden olaylarda yaşam süresini yapılandırma

Azure Depolama Kuyrukları hedefi için giden iletinin yaşam süresini yalnızca azure Depolama kuyruğuna teslim edildikten sonra yapılandırabilirsiniz. Zaman sağlanmazsa, iletinin varsayılan yaşam süresi 7 gündür. Ayrıca, olayın süresi hiç dolmak üzere de ayarlayabilirsiniz.

Delivery properties - storage queue

Sonraki adımlar

Olay teslimi hakkında daha fazla bilgi için aşağıdaki makaleye bakın: