Gebeurtenisfiltering voor Event Grid begrijpen

In dit artikel worden de verschillende manieren beschreven om te filteren welke gebeurtenissen naar uw eindpunt worden verzonden. Wanneer u een gebeurtenisabonnement maakt, hebt u drie opties voor filteren:

  • Gebeurtenistypen
  • Het onderwerp begint met of eindigt met
  • Geavanceerde velden en operators

Filteren van gebeurtenistype

Standaard worden alle gebeurtenistypen voor de gebeurtenisbron naar het eindpunt verzonden. U kunt besluiten om alleen bepaalde gebeurtenistypen naar uw eindpunt te verzenden. U kunt bijvoorbeeld op de hoogte worden gesteld van updates voor uw resources, maar niet voor andere bewerkingen, zoals verwijderingen. In dat geval filtert u op Microsoft.Resources.ResourceWriteSuccess het gebeurtenistype. Geef een matrix op met de gebeurtenistypen of geef op All om alle gebeurtenistypen voor de gebeurtenisbron op te halen.

De JSON-syntaxis voor filteren op gebeurtenistype is:

"filter": {
  "includedEventTypes": [
    "Microsoft.Resources.ResourceWriteFailure",
    "Microsoft.Resources.ResourceWriteSuccess"
  ]
}

Onderwerpfiltering

Als u eenvoudig wilt filteren op onderwerp, geeft u een begin- of eindwaarde op voor het onderwerp. U kunt bijvoorbeeld opgeven dat het onderwerp eindigt op om alleen gebeurtenissen op te halen die betrekking hebben op het .txt uploaden van een tekstbestand naar het opslagaccount. U kunt ook filteren dat het onderwerp begint met om alle gebeurtenissen voor die container op te halen, maar /blobServices/default/containers/testcontainer niet voor andere containers in het opslagaccount.

Wanneer u gebeurtenissen publiceert naar aangepaste onderwerpen, maakt u onderwerpen voor uw gebeurtenissen zodat abonnees gemakkelijk kunnen weten of ze geïnteresseerd zijn in de gebeurtenis. Abonnees gebruiken de eigenschap onderwerp om gebeurtenissen te filteren en te routeer. U kunt het pad toevoegen voor de plaats waar de gebeurtenis heeft plaatsgevonden, zodat abonnees kunnen filteren op segmenten van dat pad. Met het pad kunnen abonnees gebeurtenissen beperken of breed filteren. Als u een pad met drie segmenten op geeft, zoals in het onderwerp, kunnen abonnees filteren op het eerste segment om een /A/B/C brede reeks gebeurtenissen op te /A halen. Deze abonnees krijgen gebeurtenissen met onderwerpen zoals /A/B/C of /A/D/E . Andere abonnees kunnen filteren op om /A/B een smallere set gebeurtenissen op te halen.

De JSON-syntaxis voor filteren op onderwerp is:

"filter": {
  "subjectBeginsWith": "/blobServices/default/containers/mycontainer/log",
  "subjectEndsWith": ".jpg"
}

Geavanceerd filteren

Als u wilt filteren op waarden in de gegevensvelden en de vergelijkingsoperator wilt opgeven, gebruikt u de geavanceerde filteroptie. Bij geavanceerd filteren geeft u het volgende op:

  • operatortype: het type vergelijking.
  • sleutel: het veld in de gebeurtenisgegevens die u gebruikt voor filteren. Dit kan een getal, booleaanse, tekenreeks of matrix zijn.
  • values: de waarde of waarden die moeten worden vergeleken met de sleutel.

Sleutel

Sleutel is het veld in de gebeurtenisgegevens die u gebruikt voor filteren. Dit kan een van de volgende typen zijn:

  • Aantal

  • Boolean

  • Tekenreeks

  • Array. U moet de eigenschap instellen enableAdvancedFilteringOnArrays op true om deze functie te kunnen gebruiken.

    "filter":
    {
        "subjectBeginsWith": "/blobServices/default/containers/mycontainer/log",
        "subjectEndsWith": ".jpg",
        "enableAdvancedFilteringOnArrays": true
    }
    

Voor gebeurtenissen in het Event Grid gebruikt u de volgende waarden voor de sleutel: , , ID , , of Topic Subject EventType DataVersion gebeurtenisgegevens (zoals data.key1 ).

Gebruik voor gebeurtenissen in het cloudgebeurtenisschema de volgende waarden voor de sleutel: eventid , , , of source eventtype eventtypeversion gebeurtenisgegevens (zoals data.key1 ).

Gebruik voor een aangepast invoerschema de gebeurtenisgegevensvelden (zoals data.key1 ). Als u toegang wilt krijgen tot velden in de gegevenssectie, gebruikt u de . notatie (punt). Bijvoorbeeld , data.sitename voor toegang tot of voor de volgende data.appEventTypeDetail.action sitename action voorbeeldgebeurtenis.

    "data": {
        "appEventTypeDetail": {
            "action": "Started"
        },
        "siteName": "<site-name>",
        "clientRequestId": "None",
        "correlationRequestId": "None",
        "requestId": "292f499d-04ee-4066-994d-c2df57b99198",
        "address": "None",
        "verb": "None"
    },

Waarden

De waarden kunnen zijn: getal, tekenreeks, Booleaanse waarde of matrix

Operators

De beschikbare operators voor getallen zijn:

NumberIn

De operator NumberIn wordt geëvalueerd als true als de sleutelwaarde een van de opgegeven filterwaarden is. In het volgende voorbeeld wordt gecontroleerd of de waarde van het kenmerk in de sectie 5 of counter data 1 is.

"advancedFilters": [{
    "operatorType": "NumberIn",
    "key": "data.counter",
    "values": [
        5,
        1
    ]
}]

Als de sleutel een matrix is, worden alle waarden in de matrix gecontroleerd op basis van de matrix met filterwaarden. Hier is de pseudocode met de -sleutel: [v1, v2, v3] en het filter: [a, b, c] . Sleutelwaarden met gegevenstypen die niet overeenkomen met het gegevenstype van het filter, worden genegeerd.

FOR_EACH filter IN (a, b, c)
    FOR_EACH key IN (v1, v2, v3)
        IF filter == key
            MATCH

NumberNotIn

NumberNotIn wordt geëvalueerd als true als de sleutelwaarde geen van de opgegeven filterwaarden is. In het volgende voorbeeld wordt gecontroleerd of de waarde van het kenmerk in de sectie counter data niet 41 en 0 is.

"advancedFilters": [{
    "operatorType": "NumberNotIn",
    "key": "data.counter",
    "values": [
        41,
        0
    ]
}]

Als de sleutel een matrix is, worden alle waarden in de matrix gecontroleerd op basis van de matrix met filterwaarden. Hier is de pseudocode met de -sleutel: [v1, v2, v3] en het filter: [a, b, c] . Sleutelwaarden met gegevenstypen die niet overeenkomen met het gegevenstype van het filter, worden genegeerd.

FOR_EACH filter IN (a, b, c)
    FOR_EACH key IN (v1, v2, v3)
        IF filter == key
            FAIL_MATCH

NumberLessThan

De operator NumberLessThan evalueert naar true als de sleutelwaarde kleiner is dan de opgegeven filterwaarde. In het volgende voorbeeld wordt gecontroleerd of de waarde van het kenmerk counter in de sectie kleiner is dan data 100.

"advancedFilters": [{
    "operatorType": "NumberLessThan",
    "key": "data.counter",
    "value": 100
}]

Als de sleutel een matrix is, worden alle waarden in de matrix gecontroleerd op basis van de filterwaarde. Hier is de pseudocode met de -sleutel: [v1, v2, v3] . Sleutelwaarden met gegevenstypen die niet overeenkomen met het gegevenstype van het filter, worden genegeerd.

FOR_EACH key IN (v1, v2, v3)
    IF key < filter
        MATCH

NumberGreaterThan

De operator NumberGreaterThan evalueert naar true als de sleutelwaarde groter is dan de opgegeven filterwaarde. In het volgende voorbeeld wordt gecontroleerd of de waarde van het kenmerk counter in de sectie groter is dan data 20.

"advancedFilters": [{
    "operatorType": "NumberGreaterThan",
    "key": "data.counter",
    "value": 20
}]

Als de sleutel een matrix is, worden alle waarden in de matrix gecontroleerd op basis van de filterwaarde. Hier is de pseudocode met de -sleutel: [v1, v2, v3] . Sleutelwaarden met gegevenstypen die niet overeenkomen met het gegevenstype van het filter, worden genegeerd.

FOR_EACH key IN (v1, v2, v3)
    IF key > filter
        MATCH

NumberLessThanOrEquals

De operator NumberLessThanOrEquals evalueert naar true als de sleutelwaarde kleiner is dan of gelijk is aan de opgegeven filterwaarde. In het volgende voorbeeld wordt gecontroleerd of de waarde van het kenmerk in de sectie kleiner is dan of counter data gelijk is aan 100.

"advancedFilters": [{
    "operatorType": "NumberLessThanOrEquals",
    "key": "data.counter",
    "value": 100
}]

Als de sleutel een matrix is, worden alle waarden in de matrix gecontroleerd op basis van de filterwaarde. Hier is de pseudocode met de -sleutel: [v1, v2, v3] . Sleutelwaarden met gegevenstypen die niet overeenkomen met het gegevenstype van het filter, worden genegeerd.

FOR_EACH key IN (v1, v2, v3)
    IF key <= filter
        MATCH

NumberGreaterThanOrEquals

De operator NumberGreaterThanOrEquals evalueert naar true als de sleutelwaarde groter is dan of gelijk is aan de opgegeven filterwaarde. In het volgende voorbeeld wordt gecontroleerd of de waarde van het kenmerk in de sectie groter is dan of counter data gelijk is aan 30.

"advancedFilters": [{
    "operatorType": "NumberGreaterThanOrEquals",
    "key": "data.counter",
    "value": 30
}]

Als de sleutel een matrix is, worden alle waarden in de matrix gecontroleerd op basis van de filterwaarde. Hier is de pseudocode met de -sleutel: [v1, v2, v3] . Sleutelwaarden met gegevenstypen die niet overeenkomen met het gegevenstype van het filter, worden genegeerd.

FOR_EACH key IN (v1, v2, v3)
    IF key >= filter
        MATCH

NumberInRange

De operator NumberInRange evalueert naar true als de sleutelwaarde zich in een van de opgegeven filterbereiken . In het volgende voorbeeld wordt gecontroleerd of de waarde van het kenmerk in de sectie zich in een van de twee key1 data bereiks: 3.14159 - 999.95, 3000 - 4000.

{
    "operatorType": "NumberInRange",
    "key": "data.key1",
    "values": [[3.14159, 999.95], [3000, 4000]]
}

De values eigenschap is een matrix met reeksen. In het vorige voorbeeld is dit een matrix van twee reeksen. Hier is een voorbeeld van een matrix met één bereik om te controleren.

Matrix met één bereik:

{
    "operatorType": "NumberInRange",
    "key": "data.key1",
    "values": [[3000, 4000]]
}

Als de sleutel een matrix is, worden alle waarden in de matrix gecontroleerd op basis van de matrix met filterwaarden. Hier is de pseudocode met de -sleutel: [v1, v2, v3] en het filter: een matrix met bereik. In deze pseudocode zijn a en lage en hoge waarden van elk bereik in de b matrix. Sleutelwaarden met gegevenstypen die niet overeenkomen met het gegevenstype van het filter, worden genegeerd.

FOR_EACH (a,b) IN filter.Values
    FOR_EACH key IN (v1, v2, v3)
       IF key >= a AND key <= b
           MATCH

NumberNotInRange

De operator NumberNotInRange evalueert naar true als de sleutelwaarde zich niet in een van de opgegeven filterbereiken . In het volgende voorbeeld wordt gecontroleerd of de waarde van het kenmerk in de sectie zich in een van de twee key1 data bereiks: 3.14159 - 999.95, 3000 - 4000. Als dat zo is, retourneert de operator false.

{
    "operatorType": "NumberNotInRange",
    "key": "data.key1",
    "values": [[3.14159, 999.95], [3000, 4000]]
}

De values eigenschap is een matrix met reeksen. In het vorige voorbeeld is dit een matrix van twee reeksen. Hier is een voorbeeld van een matrix met één bereik om te controleren.

Matrix met één bereik:

{
    "operatorType": "NumberNotInRange",
    "key": "data.key1",
    "values": [[3000, 4000]]
}

Als de sleutel een matrix is, worden alle waarden in de matrix gecontroleerd op basis van de matrix met filterwaarden. Hier is de pseudocode met de -sleutel: [v1, v2, v3] en het filter: een matrix met bereik. In deze pseudocode zijn a en lage en hoge waarden van elk bereik in de b matrix. Sleutelwaarden met gegevenstypen die niet overeenkomen met het gegevenstype van het filter, worden genegeerd.

FOR_EACH (a,b) IN filter.Values
    FOR_EACH key IN (v1, v2, v3)
        IF key >= a AND key <= b
            FAIL_MATCH

De beschikbare operator voor Booleaansen is:

BoolEquals

De operator BoolEquals evalueert naar true als de sleutelwaarde het opgegeven Booleaanse waardefilter is. In het volgende voorbeeld wordt gecontroleerd of de waarde van het kenmerk isEnabled in de data sectie true is.

"advancedFilters": [{
    "operatorType": "BoolEquals",
    "key": "data.isEnabled",
    "value": true
}]

Als de sleutel een matrix is, worden alle waarden in de matrix gecontroleerd op basis van de Booleaanse waarde van het filter. Hier is de pseudocode met de -sleutel: [v1, v2, v3] . Sleutelwaarden met gegevenstypen die niet overeenkomen met het gegevenstype van het filter, worden genegeerd.

FOR_EACH key IN (v1, v2, v3)
    IF filter == key
        MATCH

De beschikbare operators voor tekenreeksen zijn:

StringContains

StringContains wordt geëvalueerd als true als de sleutelwaarde een van de opgegeven filterwaarden bevat (als subtekenreeksen). In het volgende voorbeeld wordt gecontroleerd of de waarde van het kenmerk in de sectie een van de key1 data opgegeven subtekenreeksen bevat: microsoft of azure . Heeft er azure data factory bijvoorbeeld azure in.

"advancedFilters": [{
    "operatorType": "StringContains",
    "key": "data.key1",
    "values": [
        "microsoft", 
        "azure"
    ]
}]

Als de sleutel een matrix is, worden alle waarden in de matrix gecontroleerd op basis van de matrix met filterwaarden. Hier is de pseudocode met de -sleutel: [v1, v2, v3] en het filter: [a,b,c] . Sleutelwaarden met gegevenstypen die niet overeenkomen met het gegevenstype van het filter, worden genegeerd.

FOR_EACH filter IN (a, b, c)
    FOR_EACH key IN (v1, v2, v3)
        IF key CONTAINS filter
            MATCH

StringNotContains

De operator StringNotContains evalueert naar true als de sleutel niet de opgegeven filterwaarden als subtekenreeksen bevat. Als de sleutel een van de opgegeven waarden als een subtekenreeks bevat, wordt de operator geëvalueerd als onwaar. In het volgende voorbeeld retourneert de operator alleen true als de waarde van het kenmerk in de sectie en niet als key1 data contoso fabrikam subtekenreeksen heeft.

"advancedFilters": [{
    "operatorType": "StringNotContains",
    "key": "data.key1",
    "values": [
        "contoso", 
        "fabrikam"
    ]
}]

Als de sleutel een matrix is, worden alle waarden in de matrix gecontroleerd op basis van de matrix met filterwaarden. Hier is de pseudocode met de -sleutel: [v1, v2, v3] en het filter: [a,b,c] . Sleutelwaarden met gegevenstypen die niet overeenkomen met het gegevenstype van het filter, worden genegeerd.

FOR_EACH filter IN (a, b, c)
    FOR_EACH key IN (v1, v2, v3)
        IF key CONTAINS filter
            FAIL_MATCH

Zie de sectie Beperkingen voor de huidige beperking van deze operator.

StringBeginsWith

De operator StringBeginsWith evalueert naar true als de sleutelwaarde begint met een van de opgegeven filterwaarden. In het volgende voorbeeld wordt gecontroleerd of de waarde van het kenmerk key1 in de sectie begint met of data event grid . Begint bijvoorbeeld event hubs met event .

"advancedFilters": [{
    "operatorType": "StringBeginsWith",
    "key": "data.key1",
    "values": [
        "event", 
        "message"
    ]
}]

Als de sleutel een matrix is, worden alle waarden in de matrix gecontroleerd op basis van de matrix met filterwaarden. Hier is de pseudocode met de -sleutel: [v1, v2, v3] en het filter: [a,b,c] . Sleutelwaarden met gegevenstypen die niet overeenkomen met het gegevenstype van het filter, worden genegeerd.

FOR_EACH filter IN (a, b, c)
    FOR_EACH key IN (v1, v2, v3)
        IF key BEGINS_WITH filter
            MATCH

StringNotBeginsWith

De operator StringNotBeginsWith evalueert naar true als de sleutelwaarde niet begint met een van de opgegeven filterwaarden. In het volgende voorbeeld wordt gecontroleerd of de waarde van het kenmerk in de sectie key1 niet begint met of data event message .

"advancedFilters": [{
    "operatorType": "StringNotBeginsWith",
    "key": "data.key1",
    "values": [
        "event", 
        "message"
    ]
}]

Als de sleutel een matrix is, worden alle waarden in de matrix gecontroleerd op basis van de matrix met filterwaarden. Hier is de pseudocode met de -sleutel: [v1, v2, v3] en het filter: [a,b,c] . Sleutelwaarden met gegevenstypen die niet overeenkomen met het gegevenstype van het filter, worden genegeerd.

FOR_EACH filter IN (a, b, c)
    FOR_EACH key IN (v1, v2, v3)
        IF key BEGINS_WITH filter
            FAIL_MATCH

StringEndsWith

De operator StringEndsWith evalueert naar true als de sleutelwaarde eindigt met een van de opgegeven filterwaarden. In het volgende voorbeeld wordt gecontroleerd of de waarde van het kenmerk in de sectie key1 eindigt op of of data jpg jpeg png . Eindigt bijvoorbeeld eventgrid.png op png .

"advancedFilters": [{
    "operatorType": "StringEndsWith",
    "key": "data.key1",
    "values": [
        "jpg", 
        "jpeg", 
        "png"
    ]
}]

Als de sleutel een matrix is, worden alle waarden in de matrix gecontroleerd op basis van de matrix met filterwaarden. Hier is de pseudocode met de -sleutel: [v1, v2, v3] en het filter: [a,b,c] . Sleutelwaarden met gegevenstypen die niet overeenkomen met het gegevenstype van het filter, worden genegeerd.

FOR_EACH filter IN (a, b, c)
    FOR_EACH key IN (v1, v2, v3)
        IF key ENDS_WITH filter
            MATCH

StringNotEndsWith

De operator StringNotEndsWith evalueert naar true als de sleutelwaarde niet eindigt met een van de opgegeven filterwaarden. In het volgende voorbeeld wordt gecontroleerd of de waarde van het kenmerk in de sectie niet key1 eindigt op of of data jpg jpeg png .

"advancedFilters": [{
    "operatorType": "StringNotEndsWith",
    "key": "data.key1",
    "values": [
        "jpg", 
        "jpeg", 
        "png"
    ]
}]

Als de sleutel een matrix is, worden alle waarden in de matrix gecontroleerd op basis van de matrix met filterwaarden. Hier is de pseudocode met de -sleutel: [v1, v2, v3] en het filter: [a,b,c] . Sleutelwaarden met gegevenstypen die niet overeenkomen met het gegevenstype van het filter, worden genegeerd.

FOR_EACH filter IN (a, b, c)
    FOR_EACH key IN (v1, v2, v3)
        IF key ENDS_WITH filter
            FAIL_MATCH

StringIn

De operator StringIn controleert of de sleutelwaarde exact overeenkomt met een van de opgegeven filterwaarden. In het volgende voorbeeld wordt gecontroleerd of de waarde van het kenmerk key1 in de sectie of of data contoso fabrikam factory is.

"advancedFilters": [{
    "operatorType": "StringIn",
    "key": "data.key1",
    "values": [
        "contoso", 
        "fabrikam", 
        "factory"
    ]
}]

Als de sleutel een matrix is, worden alle waarden in de matrix gecontroleerd op basis van de matrix met filterwaarden. Hier is de pseudocode met de -sleutel: [v1, v2, v3] en het filter: [a,b,c] . Sleutelwaarden met gegevenstypen die niet overeenkomen met het gegevenstype van het filter, worden genegeerd.

FOR_EACH filter IN (a, b, c)
    FOR_EACH key IN (v1, v2, v3)
        IF filter == key
            MATCH

StringNotIn

De operator StringNotIn controleert of de sleutelwaarde niet overeen komt met een van de opgegeven filterwaarden. In het volgende voorbeeld wordt gecontroleerd of de waarde van het kenmerk key1 in de sectie niet en data aws bridge is.

"advancedFilters": [{
    "operatorType": "StringNotIn",
    "key": "data.key1",
    "values": [
        "aws", 
        "bridge"
    ]
}]

Als de sleutel een matrix is, worden alle waarden in de matrix gecontroleerd op basis van de matrix met filterwaarden. Hier is de pseudocode met de -sleutel: [v1, v2, v3] en het filter: [a,b,c] . Sleutelwaarden met gegevenstypen die niet overeenkomen met het gegevenstype van het filter, worden genegeerd.

FOR_EACH filter IN (a, b, c)
    FOR_EACH key IN (v1, v2, v3)
        IF filter == key
            FAIL_MATCH

Alle tekenreeksvergelijkingen zijn niet casegevoelig.

Notitie

Als de gebeurtenis-JSON niet de geavanceerde filtersleutel bevat, wordt het filter geëmuleerd als niet-overeenkomend voor de volgende operators: NumberGreaterThan, NumberGreaterThanOrEquals, NumberLessThan, NumberLessThanOrEquals, NumberIn, BoolEquals, StringContains, StringNotContains, StringBeginsWith, StringNotBeginsWith, StringEndsWith, StringNotEndsWith, StringIn.

Het filter wordt geemuleerd als overeenkomend voor de volgende operators: NumberNotIn, StringNotIn.

IsNullOrUndefined

De operator IsNullOrUndefined evalueert naar true als de waarde van de sleutel NULL of niet-gedefinieerd is.

{
    "operatorType": "IsNullOrUndefined",
    "key": "data.key1"
}

In het volgende voorbeeld ontbreekt key1, dus de operator evalueert naar true.

{ 
    "data": 
    { 
        "key2": 5 
    } 
}

In het volgende voorbeeld is key1 ingesteld op null, dus de operator evalueert naar true.

{
    "data": 
    { 
        "key1": null
    }
}

Als key1 een andere waarde in deze voorbeelden heeft, wordt de operator geëvalueerd als onwaar.

IsNotNull

De IsNotNull-operator evalueert naar true als de waarde van de sleutel niet NULL of niet-gedefinieerd is.

{
    "operatorType": "IsNotNull",
    "key": "data.key1"
}

OR and AND

Als u één filter met meerdere waarden opgeeft, wordt een OR-bewerking uitgevoerd, dus de waarde van het sleutelveld moet een van deze waarden zijn. Hier volgt een voorbeeld:

"advancedFilters": [
    {
        "operatorType": "StringContains",
        "key": "Subject",
        "values": [
            "/providers/microsoft.devtestlab/",
            "/providers/Microsoft.Compute/virtualMachines/"
        ]
    }
]

Als u meerdere verschillende filters opgeeft, wordt een AND-bewerking uitgevoerd, dus aan elke filtervoorwaarde moet worden voldaan. Hier volgt een voorbeeld:

"advancedFilters": [
    {
        "operatorType": "StringContains",
        "key": "Subject",
        "values": [
            "/providers/microsoft.devtestlab/"
        ]
    },
    {
        "operatorType": "StringContains",
        "key": "Subject",
        "values": [
            "/providers/Microsoft.Compute/virtualMachines/"
        ]
    }
]

CloudEvents

Gebruik voor gebeurtenissen in het CloudEvents-schema de volgende waarden voor de sleutel: eventid , , , of source eventtype eventtypeversion gebeurtenisgegevens (zoals data.key1 ).

U kunt ook contextkenmerken voor extensies gebruiken in CloudEvents 1.0. In het volgende voorbeeld zijn comexampleextension1 en comexampleothervalue extensiecontextkenmerken.

{
    "specversion" : "1.0",
    "type" : "com.example.someevent",
    "source" : "/mycontext",
    "id" : "C234-1234-1234",
    "time" : "2018-04-05T17:31:00Z",
    "subject": null,
    "comexampleextension1" : "value",
    "comexampleothervalue" : 5,
    "datacontenttype" : "application/json",
    "data" : {
        "appinfoA" : "abc",
        "appinfoB" : 123,
        "appinfoC" : true
    }
}

Hier is een voorbeeld van het gebruik van een extensiecontextkenmerk in een filter.

"advancedFilters": [{
    "operatorType": "StringBeginsWith",
    "key": "comexampleothervalue",
    "values": [
        "5", 
        "1"
    ]
}]

Beperkingen

Geavanceerd filteren heeft de volgende beperkingen:

  • 5 geavanceerde filters en 25 filterwaarden voor alle filters per Event Grid-abonnement
  • 512 tekens per tekenreekswaarde
  • Vijf waarden voor in en niet in operators
  • De StringNotContains operator is momenteel niet beschikbaar in de portal.
  • Sleutels met . een (punt)teken. Bijvoorbeeld: http://schemas.microsoft.com/claims/authnclassreference of john.doe@contoso.com . Er is momenteel geen ondersteuning voor escapetekens in sleutels.

Dezelfde sleutel kan worden gebruikt in meer dan één filter.

Volgende stappen