Sdílet prostřednictvím


Event Grid v Kubernetes – filtrování událostí pro odběry

Event Grid v Kubernetes umožňuje zadat filtry pro libovolnou vlastnost v datové části JSON. Tyto filtry jsou modelovány jako sada podmínek AND, přičemž každá vnější podmínka má volitelné vnitřní podmínky OR. Pro každou podmínku AND zadejte následující hodnoty:

  • OperatorType – typ porovnání.
  • Key – cesta JSON k vlastnosti, na kterou se má filtr použít.
  • Value – referenční hodnota, pro kterou se filtr spouští (nebo) Hodnoty – sada referenčních hodnot, proti kterým se filtr spouští.

Důležité

Event Grid v Kubernetes s Azure Arc je v současné době ve verzi Public Preview. Tato verze Preview se poskytuje bez smlouvy o úrovni služeb a nedoporučuje se pro úlohy v produkčním prostředí. Některé funkce se nemusí podporovat nebo mohou mít omezené možnosti. Další informace najdete v dodatečných podmínkách použití pro verze Preview v Microsoft Azure.

Filtrovat podle typu události

Ve výchozím nastavení se do koncového bodu odesílají všechny typy událostí (type atribut) zdroje událostí. Můžete se rozhodnout odesílat do koncového bodu jenom určité typy událostí. Syntaxe JSON pro filtrování podle typu události je následující:

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

Ve výše uvedeném příkladu se do koncového bodu odběratele odesílají pouze události typu orderCreated a orderUpdated události.

Tady je ukázková událost:

[{
      "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"
      }
}]

Filtrovat podle předmětu

Pro jednoduché filtrování podle předmětu zadejte počáteční nebo koncovou hodnotu předmětu. Syntaxe JSON pro filtrování podle předmětu:

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

Například filtr nakonfigurovaný výše odešle všechny objednávky přidružené k účtu acct-123224 koncovému bodu odběratele.

Při publikování událostí k tématům vytvořte předměty událostí tak, aby předplatitelé snadno věděli, jestli mají o událost zájem. Odběratelé používají vlastnost subject k filtrování a směrování událostí. Zvažte přidání cesty, kde k události došlo, aby předplatitelé mohli filtrovat podle segmentů této cesty. Tato cesta umožňuje odběratelům úzce nebo široce filtrovat události. Pokud v předmětu zadáte cestu se třemi segmenty, například /A/B/C, předplatitelé můžou filtrovat podle prvního segmentu /A, aby získali širokou sadu událostí. Tito předplatitelé získají události s tématy, jako jsou /A/B/C nebo /A/D/E. Ostatní odběratelé můžou filtrovat podle /A/B, aby získali užší sadu událostí.

Filtrování podle hodnot v datech událostí

Podrobné informace o rozšířeném filtrování najdete v části Rozšířené filtrování v článku o Event Gridu v Azure . Event Grid v Kubernetes nepodporuje následující funkce a operátory.

  • Filtrování dat pole v klíčích příchozích událostí
  • Povolte filtrování podle atributů kontextu rozšíření CloudEvents.
  • Následující operátory
    • StringNotContains
    • StringNotBeginsWith
    • StringNotEndsWith
    • NumberInRange
    • NumberNotInRange
    • IsNullOrUndefined
    • IsNotNull

Další kroky

Další informace o cílech a obslužných rutinách podporovaných službou Event Grid ve službě Azure Arc pro Kubernetes najdete v tématu Event Grid v Kubernetes – obslužné rutiny událostí.