Event Grid na platformie Kubernetes — filtrowanie zdarzeń dla subskrypcji

Usługa Event Grid na platformie Kubernetes umożliwia określanie filtrów dla dowolnej właściwości w ładunku json. Te filtry są modelowane jako zestaw warunków AND, a każdy warunek zewnętrzny ma opcjonalne warunki wewnętrzne LUB. Dla każdego warunku AND należy określić następujące wartości:

  • OperatorType — typ porównania.
  • Key — ścieżka JSON do właściwości, na której ma być stosowany filtr.
  • Value — wartość odwołania, względem której filtr jest uruchamiany (lub) Wartości — zestaw wartości odwołań, względem których jest uruchamiany filtr.

Ważne

Usługa Event Grid na platformie Kubernetes z usługą Azure Arc jest obecnie dostępna w publicznej wersji zapoznawczej. Ta wersja zapoznawcza nie jest objęta umową dotyczącą poziomu usług i nie zalecamy korzystania z niej w przypadku obciążeń produkcyjnych. Niektóre funkcje mogą być nieobsługiwane lub ograniczone. Aby uzyskać więcej informacji, zobacz Uzupełniające warunki korzystania z wersji zapoznawczych platformy Microsoft Azure.

Filtruj według typu zdarzenia

Domyślnie wszystkie typy zdarzeń (type atrybut) dla źródła zdarzeń są wysyłane do punktu końcowego. Możesz zdecydować się na wysyłanie tylko niektórych typów zdarzeń do punktu końcowego. Składnia JSON do filtrowania według typu zdarzenia to:

"filter": {
  "includedEventTypes": [
    "orderCreated",
    "orderUpdated"
  ]
}

W powyższym przykładzie jedyne zdarzenia typu orderCreated i orderUpdated zdarzenia są wysyłane do punktu końcowego subskrybenta.

Oto przykładowe zdarzenie:

[{
      "specVersion": "1.0",
      "type" : "orderCreated",
      "source": "myCompanyName/us/webCommerceChannel/myOnlineCommerceSiteBrandName",
      "id" : "eventId-n",
      "time" : "2020-12-25T20:54:07+00:00",
      "subject" : "account/acct-123224/order/o-123456",
      "dataSchema" : "1.0",
      "data" : {
         "orderId" : "123",
         "orderType" : "PO",
         "reference" : "https://www.myCompanyName.com/orders/123"
      }
}]

Filtruj według tematu

W przypadku prostego filtrowania według tematu określ wartość początkową lub końcową tematu. Składnia JSON do filtrowania według tematu to:

"filter": {
  "subjectBeginsWith": "/account/acct-123224/"
}

Na przykład filtr skonfigurowany powyżej spowoduje wysłanie wszystkich zamówień skojarzonych z kontem acct-123224 do punktu końcowego subskrybenta.

Podczas publikowania zdarzeń w tematach utwórz tematy dla Twoich zdarzeń w sposób ułatwiający subskrybentom poznanie, czy są zainteresowani wydarzeniem. Subskrybenci używają właściwości tematu do filtrowania i kierowania zdarzeń. Rozważ dodanie ścieżki, w której wystąpiło zdarzenie, aby subskrybenci mogli filtrować według segmentów tej ścieżki. Ścieżka umożliwia subskrybentom filtrowanie zdarzeń wąsko lub szeroko. Jeśli podasz trzy ścieżki segmentu, takie jak /A/B/C w temacie, subskrybenci mogą filtrować według pierwszego segmentu /A, aby uzyskać szeroki zestaw zdarzeń. Subskrybenci otrzymują zdarzenia z tematami takimi jak /A/B/C lub /A/D/E. Inni subskrybenci mogą filtrować według /A/B, aby uzyskać węższy zestaw zdarzeń.

Filtrowanie według wartości w danych zdarzenia

Aby uzyskać szczegółowe informacje na temat zaawansowanego filtrowania, zobacz sekcję Zaawansowane filtrowanie w usłudze Event Grid na platformie Azure . Następujące funkcje i operatory nie są obsługiwane przez usługę Event Grid na platformie Kubernetes.

  • Filtrowanie danych tablicy w kluczach zdarzeń przychodzących
  • Zezwalaj na filtrowanie atrybutów kontekstu rozszerzeń CloudEvents.
  • Następujące operatory
    • StringNotContains
    • StringNotBeginsWith
    • StringNotEndsWith
    • NumberInRange
    • NumberNotInRange
    • IsNullOrUndefined
    • IsNotNull

Następne kroki

Aby dowiedzieć się więcej o miejscach docelowych i programach obsługi obsługiwanych przez usługę Event Grid w usłudze Azure Arc dla platformy Kubernetes, zobacz Event Grid na platformie Kubernetes — programy obsługi zdarzeń.