Microsoft. EventGrid eventПодписки 2019-06-01

Определение ресурса Bicep

Тип ресурса eventSubscriptions можно развернуть с помощью операций, предназначенных для следующих операций:

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Создать Microsoft. Ресурс EventGrid/eventSubscriptions, добавьте следующий Bicep в ваш шаблон.

resource symbolicname 'Microsoft.EventGrid/eventSubscriptions@2019-06-01' = {
  scope: resourceSymbolicName or scope
  name: 'string'
  properties: {
    deadLetterDestination: {
      endpointType: 'string'
      // For remaining properties, see DeadLetterDestination objects
    }
    destination: {
      endpointType: 'string'
      // For remaining properties, see EventSubscriptionDestination objects
    }
    expirationTimeUtc: 'string'
    filter: {
      advancedFilters: [
        {
          key: 'string'
          operatorType: 'string'
          // For remaining properties, see AdvancedFilter objects
        }
      ]
      includedEventTypes: [
        'string'
      ]
      isSubjectCaseSensitive: bool
      subjectBeginsWith: 'string'
      subjectEndsWith: 'string'
    }
    labels: [
      'string'
    ]
    retryPolicy: {
      eventTimeToLiveInMinutes: int
      maxDeliveryAttempts: int
    }
  }
}

Объекты AdvancedFilter

Задайте свойство operatorType , чтобы указать тип объекта.

Для BoolEquals используйте:

{
  operatorType: 'BoolEquals'
  value: bool
}

Для NumberGreaterThan используйте:

{
  operatorType: 'NumberGreaterThan'
  value: int
}

Для NumberGreaterThanOrEquals используйте:

{
  operatorType: 'NumberGreaterThanOrEquals'
  value: int
}

Для NumberIn используйте:

{
  operatorType: 'NumberIn'
  values: [
    int
  ]
}

Для NumberLessThan используйте:

{
  operatorType: 'NumberLessThan'
  value: int
}

Для NumberLessThanOrEquals используйте:

{
  operatorType: 'NumberLessThanOrEquals'
  value: int
}

Для NumberNotIn используйте:

{
  operatorType: 'NumberNotIn'
  values: [
    int
  ]
}

Для StringBeginsWith используйте:

{
  operatorType: 'StringBeginsWith'
  values: [
    'string'
  ]
}

Для StringContains используйте:

{
  operatorType: 'StringContains'
  values: [
    'string'
  ]
}

Для StringEndsWith используйте:

{
  operatorType: 'StringEndsWith'
  values: [
    'string'
  ]
}

Для StringIn используйте:

{
  operatorType: 'StringIn'
  values: [
    'string'
  ]
}

Для StringNotIn используйте:

{
  operatorType: 'StringNotIn'
  values: [
    'string'
  ]
}

Объекты DeadLetterDestination

Задайте свойство endpointType , чтобы указать тип объекта.

Для StorageBlob используйте:

{
  endpointType: 'StorageBlob'
  properties: {
    blobContainerName: 'string'
    resourceId: 'string'
  }
}

Объекты EventSubscriptionDestination

Задайте свойство endpointType , чтобы указать тип объекта.

Для EventHub используйте:

{
  endpointType: 'EventHub'
  properties: {
    resourceId: 'string'
  }
}

Для HybridConnection используйте:

{
  endpointType: 'HybridConnection'
  properties: {
    resourceId: 'string'
  }
}

Для ServiceBusQueue используйте:

{
  endpointType: 'ServiceBusQueue'
  properties: {
    resourceId: 'string'
  }
}

Для StorageQueue используйте:

{
  endpointType: 'StorageQueue'
  properties: {
    queueName: 'string'
    resourceId: 'string'
  }
}

Для WebHook используйте:

{
  endpointType: 'WebHook'
  properties: {
    endpointUrl: 'string'
  }
}

Значения свойств

Microsoft. EventGrid/eventSubscriptions

Name Description Value
name имя ресурса. строка (обязательно)
properties Свойства подписки на события EventSubscriptionProperties
scope Используется при создании ресурса в области, отличной от области развертывания. Задайте для этого свойства символьное имя ресурса, чтобы применить ресурс расширения.

AdvancedFilter

Name Description Value
key Поле или свойство в событии, на основе которого требуется отфильтровать. string
operatorType Установите значение 'BoolEquals' для типа BoolEqualsAdvancedFilter. Установите значение 'NumberGreaterThan' для типа NumberGreaterThanAdvancedFilter. Установите значение 'NumberGreaterThanOrEquals' для типа NumberGreaterThanOrEqualsAdvancedFilter. Установите значение 'NumberIn' для типа NumberInAdvancedFilter. Установите значение 'NumberLessThan' для типа NumberLessThanAdvancedFilter. Установите значение 'NumberLessThanOrEquals' для типа NumberLessThanOrEqualsAdvancedFilter. Установите значение 'NumberNotIn' для типа NumberNotInAdvancedFilter. Установите значение 'StringBeginsWith' для типа StringBeginsWithAdvancedFilter. Установите значение 'StringContains' для типа StringContainsAdvancedFilter. Установите значение 'StringEndsWith' для типа StringEndsWithAdvancedFilter. Установите значение 'StringIn' для типа StringInAdvancedFilter. Установите значение 'StringNotIn' для типа StringNotInAdvancedFilter. 'BoolEquals'
'NumberGreaterThan'
'NumberGreaterThanOrEquals'
'NumberIn'
'NumberLessThan'
'NumberLessThanOrEquals'
'NumberNotIn'
'StringBeginsWith'
'StringContains'
'StringEndsWith'
'StringIn'
'StringNotIn' (обязательно)

BoolEqualsAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'BoolEquals' (обязательно)
value Логическое значение фильтра. bool

DeadLetterDestination

Name Description Value
endpointType Установите значение 'StorageBlob' для типа StorageBlobDeadLetterDestination. 'StorageBlob' (обязательно)

EventHubEventSubscriptionDestination

Name Description Value
endpointType Тип конечной точки для назначения подписки на события «EventHub» (обязательно)
properties Свойства концентратора событий назначения подписки на события EventHubEventSubscriptionDestinationProperties

EventHubEventSubscriptionDestinationProperties

Name Description Value
resourceId Azure Resource Id, представляющий конечную точку назначения Event Hub для подписки на событие. string

EventSubscriptionDestination

Name Description Value
endpointType Установите значение "EventHub" для типа EventHubEventSubscriptionDestination. Установите значение "HybridConnection" для типа HybridConnectionEventSubscriptionDestination. Установите значение 'ServiceBusQueue' для типа ServiceBusQueueEventSubscriptionDestination. Установите значение 'StorageQueue' для типа StorageQueueEventSubscriptionDestination. Установите значение 'WebHook' для типа WebHookEventSubscriptionDestination. 'EventHub'
'HybridConnection'
'ServiceBusQueue'
'StorageQueue'
'WebHook' (обязательно)

EventSubscriptionFilter

Name Description Value
advancedFilters Массив расширенных фильтров, используемых для фильтрации подписок на события. AdvancedFilter[]
includedEventTypes Список применимых типов событий, которые должны быть частью подписки на события. Если требуется подписаться на все типы событий по умолчанию, задайте для параметра IncludedEventTypes значение NULL. string[]
isSubjectCaseSensitive Указывает, являются ли свойства SubjectBeginsWith и SubjectEndsWith фильтра
следует сравнить с учетом регистра.
bool
subjectBeginsWith Необязательная строка для фильтрации событий подписки на основе префикса пути к ресурсу.
Формат этого зависит от издателя событий.
Подстановочные знаки не поддерживаются в этом пути.
string
subjectEndsWith Необязательная строка для фильтрации событий подписки на основе суффикса пути к ресурсу.
Подстановочные знаки не поддерживаются в этом пути.
string

EventSubscriptionProperties

Name Description Value
deadLetterDestination Назначение DeadLetter подписки на событие. DeadLetterDestination
destination Сведения о назначении, в котором должны быть доставлены события для подписки на события. EventSubscriptionDestination
expirationTimeUtc Срок действия подписки на событие. string
filter Сведения о фильтре для подписки на события. EventSubscriptionFilter
labels Список определяемых пользователем меток. string[]
retryPolicy Политика повторных попыток для событий. Это можно использовать для настройки максимального количества попыток доставки и времени жизни для событий. RetryPolicy

HybridConnectionEventSubscriptionDestination

Name Description Value
endpointType Тип конечной точки для назначения подписки на события 'HybridConnection' (обязательно)
properties Свойства гибридного подключения назначения подписки на события HybridConnectionEventSubscriptionDestinationProperties

HybridConnectionEventSubscriptionDestinationProperties

Name Description Value
resourceId Azure Resource ID гибридного соединения, которое является назначением для подписки на событие. string

NumberGreaterThanAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberGreaterThan' (обязательно)
value Значение фильтра. int

NumberGreaterThanOrEqualsAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberGreaterThanOrEquals' (обязательно)
value Значение фильтра. int

NumberInAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberIn' (обязательно)
values Набор значений фильтра. int[]

NumberLessThanAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberLessThan' (обязательно)
value Значение фильтра. int

NumberLessThanOrEqualsAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberLessThanOrEquals' (обязательно)
value Значение фильтра. int

NumberNotInAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberNotIn' (обязательно)
values Набор значений фильтра. int[]

RetryPolicy

Name Description Value
eventTimeToLiveInMinutes Время жизни (в минутах) для событий. int
maxDeliveryAttempts Максимальное количество попыток повторных попыток доставки для событий. int

ServiceBusQueueEventSubscriptionDestination

Name Description Value
endpointType Тип конечной точки для назначения подписки на события 'ServiceBusQueue' (обязательно)
properties служебная шина Свойства места подписки на мероприятие ServiceBusQueueEventSubscriptionDestinationProperties

ServiceBusQueueEventSubscriptionDestinationProperties

Name Description Value
resourceId Идентификатор ресурса Azure, представляющий конечную точку назначения служебная шина подписки на событие. string

StorageBlobDeadLetterDestination

Name Description Value
endpointType Тип конечной точки для назначения недоставленной буквы 'StorageBlob' (обязательно)
properties Свойства назначения недоставки на основе BLOB-объектов хранилища StorageBlobDeadLetterDestinationProperties

StorageBlobDeadLetterDestinationProperties

Name Description Value
blobContainerName Имя контейнера BLOB-объектов хранилища, который является назначением событий недоставки string
resourceId Идентификатор ресурса Azure аккаунта хранения, который является назначением событий deadletter string

StorageQueueEventSubscriptionDestination

Name Description Value
endpointType Тип конечной точки для назначения подписки на события 'StorageQueue' (обязательно)
properties Свойства очереди хранилища назначения подписки на события StorageQueueEventSubscriptionDestinationProperties

StorageQueueEventSubscriptionDestinationProperties

Name Description Value
queueName Имя очереди хранилища в учетной записи хранения, которая является назначением подписки на событие. string
resourceId Идентификатор ресурса Azure аккаунта хранения, содержащего очередь, являющуюся получателем подписки на событие. string

StringBeginsWithAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'StringBeginsWith' (обязательно)
values Набор значений фильтра. string[]

StringContainsAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'StringContains' (обязательно)
values Набор значений фильтра. string[]

StringEndsWithAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'StringEndsWith' (обязательно)
values Набор значений фильтра. string[]

StringInAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'StringIn' (обязательно)
values Набор значений фильтра. string[]

StringNotInAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'StringNotIn' (обязательно)
values Набор значений фильтра. string[]

WebHookEventSubscriptionDestination

Name Description Value
endpointType Тип конечной точки для назначения подписки на события 'WebHook' (обязательно)
properties Свойства веб-перехватчика назначения подписки на события WebHookEventSubscriptionDestinationProperties

WebHookEventSubscriptionDestinationProperties

Name Description Value
endpointUrl URL-адрес, представляющий конечную точку назначения подписки на событие. string

Примеры использования

Примеры Bicep

Простой пример развертывания подписки на события EventGrid.

param resourceName string = 'acctest0001'
param location string = 'westeurope'

resource storageAccount 'Microsoft.Storage/storageAccounts@2021-09-01' = {
  name: resourceName
  location: location
  sku: {
    name: 'Standard_LRS'
  }
  kind: 'StorageV2'
  properties: {
    accessTier: 'Hot'
    allowBlobPublicAccess: true
    allowCrossTenantReplication: true
    allowSharedKeyAccess: true
    defaultToOAuthAuthentication: false
    encryption: {
      keySource: 'Microsoft.Storage'
      services: {
        queue: {
          keyType: 'Service'
        }
        table: {
          keyType: 'Service'
        }
      }
    }
    isHnsEnabled: false
    isNfsV3Enabled: false
    isSftpEnabled: false
    minimumTlsVersion: 'TLS1_2'
    networkAcls: {
      defaultAction: 'Allow'
    }
    publicNetworkAccess: 'Enabled'
    supportsHttpsTrafficOnly: true
  }
}

resource eventSubscription 'Microsoft.EventGrid/eventSubscriptions@2021-12-01' = {
  name: resourceName
  scope: storageAccount
  properties: {
    destination: {
      endpointType: 'EventHub'
      properties: {
        resourceId: eventhub.id
      }
    }
    eventDeliverySchema: 'EventGridSchema'
    filter: {
      includedEventTypes: [
        'Microsoft.Storage.BlobCreated'
        'Microsoft.Storage.BlobRenamed'
      ]
    }
    labels: []
    retryPolicy: {
      eventTimeToLiveInMinutes: 144
      maxDeliveryAttempts: 10
    }
  }
}

resource namespace 'Microsoft.EventHub/namespaces@2022-01-01-preview' = {
  name: resourceName
  location: location
  sku: {
    capacity: 1
    name: 'Standard'
    tier: 'Standard'
  }
  properties: {
    disableLocalAuth: false
    isAutoInflateEnabled: false
    publicNetworkAccess: 'Enabled'
    zoneRedundant: false
  }
}

resource eventhub 'Microsoft.EventHub/namespaces/eventhubs@2021-11-01' = {
  name: resourceName
  parent: namespace
  properties: {
    messageRetentionInDays: 1
    partitionCount: 1
    status: 'Active'
  }
}

Примеры быстрого запуска Azure

Следующие шаблоны Azure Quickstart содержат Bicep образцов для развертывания этого типа ресурсов.

Bicep-файл Description
Создать Сетка событий Azure пользовательскую подписку на тему и очередь Создаёт пользовательскую тему Сетка событий Azure и подписку на очередь сервисной шины. Шаблон первоначально создан Маркусом Мейером.
Создать Сетка событий Azure пользовательскую тему и подписку Создаёт пользовательскую тему Сетка событий Azure и подписку webhook. Шаблон первоначально создан Джоном Дауном.

Определение ресурса шаблона ARM

Тип ресурса eventSubscriptions можно развернуть с помощью операций, предназначенных для следующих операций:

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Создать Microsoft. Ресурс EventGrid/eventSubscriptions, добавьте следующий JSON в ваш шаблон.

{
  "type": "Microsoft.EventGrid/eventSubscriptions",
  "apiVersion": "2019-06-01",
  "name": "string",
  "properties": {
    "deadLetterDestination": {
      "endpointType": "string"
      // For remaining properties, see DeadLetterDestination objects
    },
    "destination": {
      "endpointType": "string"
      // For remaining properties, see EventSubscriptionDestination objects
    },
    "expirationTimeUtc": "string",
    "filter": {
      "advancedFilters": [ {
        "key": "string",
        "operatorType": "string"
        // For remaining properties, see AdvancedFilter objects
      } ],
      "includedEventTypes": [ "string" ],
      "isSubjectCaseSensitive": "bool",
      "subjectBeginsWith": "string",
      "subjectEndsWith": "string"
    },
    "labels": [ "string" ],
    "retryPolicy": {
      "eventTimeToLiveInMinutes": "int",
      "maxDeliveryAttempts": "int"
    }
  }
}

Объекты AdvancedFilter

Задайте свойство operatorType , чтобы указать тип объекта.

Для BoolEquals используйте:

{
  "operatorType": "BoolEquals",
  "value": "bool"
}

Для NumberGreaterThan используйте:

{
  "operatorType": "NumberGreaterThan",
  "value": "int"
}

Для NumberGreaterThanOrEquals используйте:

{
  "operatorType": "NumberGreaterThanOrEquals",
  "value": "int"
}

Для NumberIn используйте:

{
  "operatorType": "NumberIn",
  "values": [ "int" ]
}

Для NumberLessThan используйте:

{
  "operatorType": "NumberLessThan",
  "value": "int"
}

Для NumberLessThanOrEquals используйте:

{
  "operatorType": "NumberLessThanOrEquals",
  "value": "int"
}

Для NumberNotIn используйте:

{
  "operatorType": "NumberNotIn",
  "values": [ "int" ]
}

Для StringBeginsWith используйте:

{
  "operatorType": "StringBeginsWith",
  "values": [ "string" ]
}

Для StringContains используйте:

{
  "operatorType": "StringContains",
  "values": [ "string" ]
}

Для StringEndsWith используйте:

{
  "operatorType": "StringEndsWith",
  "values": [ "string" ]
}

Для StringIn используйте:

{
  "operatorType": "StringIn",
  "values": [ "string" ]
}

Для StringNotIn используйте:

{
  "operatorType": "StringNotIn",
  "values": [ "string" ]
}

Объекты DeadLetterDestination

Задайте свойство endpointType , чтобы указать тип объекта.

Для StorageBlob используйте:

{
  "endpointType": "StorageBlob",
  "properties": {
    "blobContainerName": "string",
    "resourceId": "string"
  }
}

Объекты EventSubscriptionDestination

Задайте свойство endpointType , чтобы указать тип объекта.

Для EventHub используйте:

{
  "endpointType": "EventHub",
  "properties": {
    "resourceId": "string"
  }
}

Для HybridConnection используйте:

{
  "endpointType": "HybridConnection",
  "properties": {
    "resourceId": "string"
  }
}

Для ServiceBusQueue используйте:

{
  "endpointType": "ServiceBusQueue",
  "properties": {
    "resourceId": "string"
  }
}

Для StorageQueue используйте:

{
  "endpointType": "StorageQueue",
  "properties": {
    "queueName": "string",
    "resourceId": "string"
  }
}

Для WebHook используйте:

{
  "endpointType": "WebHook",
  "properties": {
    "endpointUrl": "string"
  }
}

Значения свойств

Microsoft. EventGrid/eventSubscriptions

Name Description Value
apiVersion Версия API '2019-06-01'
name имя ресурса. строка (обязательно)
properties Свойства подписки на события EventSubscriptionProperties
type Тип ресурса 'Microsoft. EventGrid/eventSubscriptions'

AdvancedFilter

Name Description Value
key Поле или свойство в событии, на основе которого требуется отфильтровать. string
operatorType Установите значение 'BoolEquals' для типа BoolEqualsAdvancedFilter. Установите значение 'NumberGreaterThan' для типа NumberGreaterThanAdvancedFilter. Установите значение 'NumberGreaterThanOrEquals' для типа NumberGreaterThanOrEqualsAdvancedFilter. Установите значение 'NumberIn' для типа NumberInAdvancedFilter. Установите значение 'NumberLessThan' для типа NumberLessThanAdvancedFilter. Установите значение 'NumberLessThanOrEquals' для типа NumberLessThanOrEqualsAdvancedFilter. Установите значение 'NumberNotIn' для типа NumberNotInAdvancedFilter. Установите значение 'StringBeginsWith' для типа StringBeginsWithAdvancedFilter. Установите значение 'StringContains' для типа StringContainsAdvancedFilter. Установите значение 'StringEndsWith' для типа StringEndsWithAdvancedFilter. Установите значение 'StringIn' для типа StringInAdvancedFilter. Установите значение 'StringNotIn' для типа StringNotInAdvancedFilter. 'BoolEquals'
'NumberGreaterThan'
'NumberGreaterThanOrEquals'
'NumberIn'
'NumberLessThan'
'NumberLessThanOrEquals'
'NumberNotIn'
'StringBeginsWith'
'StringContains'
'StringEndsWith'
'StringIn'
'StringNotIn' (обязательно)

BoolEqualsAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'BoolEquals' (обязательно)
value Логическое значение фильтра. bool

DeadLetterDestination

Name Description Value
endpointType Установите значение 'StorageBlob' для типа StorageBlobDeadLetterDestination. 'StorageBlob' (обязательно)

EventHubEventSubscriptionDestination

Name Description Value
endpointType Тип конечной точки для назначения подписки на события «EventHub» (обязательно)
properties Свойства концентратора событий назначения подписки на события EventHubEventSubscriptionDestinationProperties

EventHubEventSubscriptionDestinationProperties

Name Description Value
resourceId Azure Resource Id, представляющий конечную точку назначения Event Hub для подписки на событие. string

EventSubscriptionDestination

Name Description Value
endpointType Установите значение "EventHub" для типа EventHubEventSubscriptionDestination. Установите значение "HybridConnection" для типа HybridConnectionEventSubscriptionDestination. Установите значение 'ServiceBusQueue' для типа ServiceBusQueueEventSubscriptionDestination. Установите значение 'StorageQueue' для типа StorageQueueEventSubscriptionDestination. Установите значение 'WebHook' для типа WebHookEventSubscriptionDestination. 'EventHub'
'HybridConnection'
'ServiceBusQueue'
'StorageQueue'
'WebHook' (обязательно)

EventSubscriptionFilter

Name Description Value
advancedFilters Массив расширенных фильтров, используемых для фильтрации подписок на события. AdvancedFilter[]
includedEventTypes Список применимых типов событий, которые должны быть частью подписки на события. Если требуется подписаться на все типы событий по умолчанию, задайте для параметра IncludedEventTypes значение NULL. string[]
isSubjectCaseSensitive Указывает, являются ли свойства SubjectBeginsWith и SubjectEndsWith фильтра
следует сравнить с учетом регистра.
bool
subjectBeginsWith Необязательная строка для фильтрации событий подписки на основе префикса пути к ресурсу.
Формат этого зависит от издателя событий.
Подстановочные знаки не поддерживаются в этом пути.
string
subjectEndsWith Необязательная строка для фильтрации событий подписки на основе суффикса пути к ресурсу.
Подстановочные знаки не поддерживаются в этом пути.
string

EventSubscriptionProperties

Name Description Value
deadLetterDestination Назначение DeadLetter подписки на событие. DeadLetterDestination
destination Сведения о назначении, в котором должны быть доставлены события для подписки на события. EventSubscriptionDestination
expirationTimeUtc Срок действия подписки на событие. string
filter Сведения о фильтре для подписки на события. EventSubscriptionFilter
labels Список определяемых пользователем меток. string[]
retryPolicy Политика повторных попыток для событий. Это можно использовать для настройки максимального количества попыток доставки и времени жизни для событий. RetryPolicy

HybridConnectionEventSubscriptionDestination

Name Description Value
endpointType Тип конечной точки для назначения подписки на события 'HybridConnection' (обязательно)
properties Свойства гибридного подключения назначения подписки на события HybridConnectionEventSubscriptionDestinationProperties

HybridConnectionEventSubscriptionDestinationProperties

Name Description Value
resourceId Azure Resource ID гибридного соединения, которое является назначением для подписки на событие. string

NumberGreaterThanAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberGreaterThan' (обязательно)
value Значение фильтра. int

NumberGreaterThanOrEqualsAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberGreaterThanOrEquals' (обязательно)
value Значение фильтра. int

NumberInAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberIn' (обязательно)
values Набор значений фильтра. int[]

NumberLessThanAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberLessThan' (обязательно)
value Значение фильтра. int

NumberLessThanOrEqualsAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberLessThanOrEquals' (обязательно)
value Значение фильтра. int

NumberNotInAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberNotIn' (обязательно)
values Набор значений фильтра. int[]

RetryPolicy

Name Description Value
eventTimeToLiveInMinutes Время жизни (в минутах) для событий. int
maxDeliveryAttempts Максимальное количество попыток повторных попыток доставки для событий. int

ServiceBusQueueEventSubscriptionDestination

Name Description Value
endpointType Тип конечной точки для назначения подписки на события 'ServiceBusQueue' (обязательно)
properties служебная шина Свойства места подписки на мероприятие ServiceBusQueueEventSubscriptionDestinationProperties

ServiceBusQueueEventSubscriptionDestinationProperties

Name Description Value
resourceId Идентификатор ресурса Azure, представляющий конечную точку назначения служебная шина подписки на событие. string

StorageBlobDeadLetterDestination

Name Description Value
endpointType Тип конечной точки для назначения недоставленной буквы 'StorageBlob' (обязательно)
properties Свойства назначения недоставки на основе BLOB-объектов хранилища StorageBlobDeadLetterDestinationProperties

StorageBlobDeadLetterDestinationProperties

Name Description Value
blobContainerName Имя контейнера BLOB-объектов хранилища, который является назначением событий недоставки string
resourceId Идентификатор ресурса Azure аккаунта хранения, который является назначением событий deadletter string

StorageQueueEventSubscriptionDestination

Name Description Value
endpointType Тип конечной точки для назначения подписки на события 'StorageQueue' (обязательно)
properties Свойства очереди хранилища назначения подписки на события StorageQueueEventSubscriptionDestinationProperties

StorageQueueEventSubscriptionDestinationProperties

Name Description Value
queueName Имя очереди хранилища в учетной записи хранения, которая является назначением подписки на событие. string
resourceId Идентификатор ресурса Azure аккаунта хранения, содержащего очередь, являющуюся получателем подписки на событие. string

StringBeginsWithAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'StringBeginsWith' (обязательно)
values Набор значений фильтра. string[]

StringContainsAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'StringContains' (обязательно)
values Набор значений фильтра. string[]

StringEndsWithAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'StringEndsWith' (обязательно)
values Набор значений фильтра. string[]

StringInAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'StringIn' (обязательно)
values Набор значений фильтра. string[]

StringNotInAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'StringNotIn' (обязательно)
values Набор значений фильтра. string[]

WebHookEventSubscriptionDestination

Name Description Value
endpointType Тип конечной точки для назначения подписки на события 'WebHook' (обязательно)
properties Свойства веб-перехватчика назначения подписки на события WebHookEventSubscriptionDestinationProperties

WebHookEventSubscriptionDestinationProperties

Name Description Value
endpointUrl URL-адрес, представляющий конечную точку назначения подписки на событие. string

Примеры использования

Шаблоны быстрого запуска Azure

Следующие Azure шаблоны быстрого запуска развёртают этот тип ресурса.

Template Description
Создать Сетка событий Azure пользовательскую подписку на тему и очередь

Развернуться на Azure
Создаёт пользовательскую тему Сетка событий Azure и подписку на очередь сервисной шины. Шаблон первоначально создан Маркусом Мейером.
Создать Сетка событий Azure пользовательскую тему и подписку

Развернуться на Azure
Создаёт пользовательскую тему Сетка событий Azure и подписку webhook. Шаблон первоначально создан Джоном Дауном.
создание настраиваемой подписки сетки событий Azure

Развернуться на Azure
Создает пользовательскую тему Сетка событий Azure и подписку на тему сервисной шины. Шаблон первоначально создан Маркусом Мейером.
Create Event Grid — пользовательский обработчик тем и хаб событий

Развернуться на Azure
Создаёт пользовательский тематический и event hub Сетка событий Azure для обработки событий.
Create Event Grid подписка для событий ресурсов

Развернуться на Azure
Создаёт подписку Event Grid либо на группу ресурсов, либо на подписку Azure.
Пользовательская тема/подписка Сетка событий Azure с CloudEvents

Развернуться на Azure
Создаёт пользовательскую тему Сетка событий Azure, подписку webhook со схемой CloudEvents и логическое приложение в качестве обработчика событий. Шаблон первоначально создан ДжастинОм Yoo.

Определение ресурса Terraform (поставщик AzAPI)

Тип ресурса eventSubscriptions можно развернуть с помощью операций, предназначенных для следующих операций:

  • Арендатор* Управленческие группы* Подписка* Группы ресурсов

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Создать Microsoft. Ресурс EventGrid/eventSubscriptions, добавьте следующий Terraform в ваш шаблон.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.EventGrid/eventSubscriptions@2019-06-01"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      deadLetterDestination = {
        endpointType = "string"
        // For remaining properties, see DeadLetterDestination objects
      }
      destination = {
        endpointType = "string"
        // For remaining properties, see EventSubscriptionDestination objects
      }
      expirationTimeUtc = "string"
      filter = {
        advancedFilters = [
          {
            key = "string"
            operatorType = "string"
            // For remaining properties, see AdvancedFilter objects
          }
        ]
        includedEventTypes = [
          "string"
        ]
        isSubjectCaseSensitive = bool
        subjectBeginsWith = "string"
        subjectEndsWith = "string"
      }
      labels = [
        "string"
      ]
      retryPolicy = {
        eventTimeToLiveInMinutes = int
        maxDeliveryAttempts = int
      }
    }
  }
}

Объекты AdvancedFilter

Задайте свойство operatorType , чтобы указать тип объекта.

Для BoolEquals используйте:

{
  operatorType = "BoolEquals"
  value = bool
}

Для NumberGreaterThan используйте:

{
  operatorType = "NumberGreaterThan"
  value = int
}

Для NumberGreaterThanOrEquals используйте:

{
  operatorType = "NumberGreaterThanOrEquals"
  value = int
}

Для NumberIn используйте:

{
  operatorType = "NumberIn"
  values = [
    int
  ]
}

Для NumberLessThan используйте:

{
  operatorType = "NumberLessThan"
  value = int
}

Для NumberLessThanOrEquals используйте:

{
  operatorType = "NumberLessThanOrEquals"
  value = int
}

Для NumberNotIn используйте:

{
  operatorType = "NumberNotIn"
  values = [
    int
  ]
}

Для StringBeginsWith используйте:

{
  operatorType = "StringBeginsWith"
  values = [
    "string"
  ]
}

Для StringContains используйте:

{
  operatorType = "StringContains"
  values = [
    "string"
  ]
}

Для StringEndsWith используйте:

{
  operatorType = "StringEndsWith"
  values = [
    "string"
  ]
}

Для StringIn используйте:

{
  operatorType = "StringIn"
  values = [
    "string"
  ]
}

Для StringNotIn используйте:

{
  operatorType = "StringNotIn"
  values = [
    "string"
  ]
}

Объекты DeadLetterDestination

Задайте свойство endpointType , чтобы указать тип объекта.

Для StorageBlob используйте:

{
  endpointType = "StorageBlob"
  properties = {
    blobContainerName = "string"
    resourceId = "string"
  }
}

Объекты EventSubscriptionDestination

Задайте свойство endpointType , чтобы указать тип объекта.

Для EventHub используйте:

{
  endpointType = "EventHub"
  properties = {
    resourceId = "string"
  }
}

Для HybridConnection используйте:

{
  endpointType = "HybridConnection"
  properties = {
    resourceId = "string"
  }
}

Для ServiceBusQueue используйте:

{
  endpointType = "ServiceBusQueue"
  properties = {
    resourceId = "string"
  }
}

Для StorageQueue используйте:

{
  endpointType = "StorageQueue"
  properties = {
    queueName = "string"
    resourceId = "string"
  }
}

Для WebHook используйте:

{
  endpointType = "WebHook"
  properties = {
    endpointUrl = "string"
  }
}

Значения свойств

Microsoft. EventGrid/eventSubscriptions

Name Description Value
name имя ресурса. строка (обязательно)
parent_id Идентификатор ресурса для применения этого ресурса расширения. строка (обязательно)
properties Свойства подписки на события EventSubscriptionProperties
type Тип ресурса «Microsoft. EventGrid/eventSubscriptions@2019-06-01"

AdvancedFilter

Name Description Value
key Поле или свойство в событии, на основе которого требуется отфильтровать. string
operatorType Установите значение 'BoolEquals' для типа BoolEqualsAdvancedFilter. Установите значение 'NumberGreaterThan' для типа NumberGreaterThanAdvancedFilter. Установите значение 'NumberGreaterThanOrEquals' для типа NumberGreaterThanOrEqualsAdvancedFilter. Установите значение 'NumberIn' для типа NumberInAdvancedFilter. Установите значение 'NumberLessThan' для типа NumberLessThanAdvancedFilter. Установите значение 'NumberLessThanOrEquals' для типа NumberLessThanOrEqualsAdvancedFilter. Установите значение 'NumberNotIn' для типа NumberNotInAdvancedFilter. Установите значение 'StringBeginsWith' для типа StringBeginsWithAdvancedFilter. Установите значение 'StringContains' для типа StringContainsAdvancedFilter. Установите значение 'StringEndsWith' для типа StringEndsWithAdvancedFilter. Установите значение 'StringIn' для типа StringInAdvancedFilter. Установите значение 'StringNotIn' для типа StringNotInAdvancedFilter. 'BoolEquals'
'NumberGreaterThan'
'NumberGreaterThanOrEquals'
'NumberIn'
'NumberLessThan'
'NumberLessThanOrEquals'
'NumberNotIn'
'StringBeginsWith'
'StringContains'
'StringEndsWith'
'StringIn'
'StringNotIn' (обязательно)

BoolEqualsAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'BoolEquals' (обязательно)
value Логическое значение фильтра. bool

DeadLetterDestination

Name Description Value
endpointType Установите значение 'StorageBlob' для типа StorageBlobDeadLetterDestination. 'StorageBlob' (обязательно)

EventHubEventSubscriptionDestination

Name Description Value
endpointType Тип конечной точки для назначения подписки на события «EventHub» (обязательно)
properties Свойства концентратора событий назначения подписки на события EventHubEventSubscriptionDestinationProperties

EventHubEventSubscriptionDestinationProperties

Name Description Value
resourceId Azure Resource Id, представляющий конечную точку назначения Event Hub для подписки на событие. string

EventSubscriptionDestination

Name Description Value
endpointType Установите значение "EventHub" для типа EventHubEventSubscriptionDestination. Установите значение "HybridConnection" для типа HybridConnectionEventSubscriptionDestination. Установите значение 'ServiceBusQueue' для типа ServiceBusQueueEventSubscriptionDestination. Установите значение 'StorageQueue' для типа StorageQueueEventSubscriptionDestination. Установите значение 'WebHook' для типа WebHookEventSubscriptionDestination. 'EventHub'
'HybridConnection'
'ServiceBusQueue'
'StorageQueue'
'WebHook' (обязательно)

EventSubscriptionFilter

Name Description Value
advancedFilters Массив расширенных фильтров, используемых для фильтрации подписок на события. AdvancedFilter[]
includedEventTypes Список применимых типов событий, которые должны быть частью подписки на события. Если требуется подписаться на все типы событий по умолчанию, задайте для параметра IncludedEventTypes значение NULL. string[]
isSubjectCaseSensitive Указывает, являются ли свойства SubjectBeginsWith и SubjectEndsWith фильтра
следует сравнить с учетом регистра.
bool
subjectBeginsWith Необязательная строка для фильтрации событий подписки на основе префикса пути к ресурсу.
Формат этого зависит от издателя событий.
Подстановочные знаки не поддерживаются в этом пути.
string
subjectEndsWith Необязательная строка для фильтрации событий подписки на основе суффикса пути к ресурсу.
Подстановочные знаки не поддерживаются в этом пути.
string

EventSubscriptionProperties

Name Description Value
deadLetterDestination Назначение DeadLetter подписки на событие. DeadLetterDestination
destination Сведения о назначении, в котором должны быть доставлены события для подписки на события. EventSubscriptionDestination
expirationTimeUtc Срок действия подписки на событие. string
filter Сведения о фильтре для подписки на события. EventSubscriptionFilter
labels Список определяемых пользователем меток. string[]
retryPolicy Политика повторных попыток для событий. Это можно использовать для настройки максимального количества попыток доставки и времени жизни для событий. RetryPolicy

HybridConnectionEventSubscriptionDestination

Name Description Value
endpointType Тип конечной точки для назначения подписки на события 'HybridConnection' (обязательно)
properties Свойства гибридного подключения назначения подписки на события HybridConnectionEventSubscriptionDestinationProperties

HybridConnectionEventSubscriptionDestinationProperties

Name Description Value
resourceId Azure Resource ID гибридного соединения, которое является назначением для подписки на событие. string

NumberGreaterThanAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberGreaterThan' (обязательно)
value Значение фильтра. int

NumberGreaterThanOrEqualsAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberGreaterThanOrEquals' (обязательно)
value Значение фильтра. int

NumberInAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberIn' (обязательно)
values Набор значений фильтра. int[]

NumberLessThanAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberLessThan' (обязательно)
value Значение фильтра. int

NumberLessThanOrEqualsAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberLessThanOrEquals' (обязательно)
value Значение фильтра. int

NumberNotInAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'NumberNotIn' (обязательно)
values Набор значений фильтра. int[]

RetryPolicy

Name Description Value
eventTimeToLiveInMinutes Время жизни (в минутах) для событий. int
maxDeliveryAttempts Максимальное количество попыток повторных попыток доставки для событий. int

ServiceBusQueueEventSubscriptionDestination

Name Description Value
endpointType Тип конечной точки для назначения подписки на события 'ServiceBusQueue' (обязательно)
properties служебная шина Свойства места подписки на мероприятие ServiceBusQueueEventSubscriptionDestinationProperties

ServiceBusQueueEventSubscriptionDestinationProperties

Name Description Value
resourceId Идентификатор ресурса Azure, представляющий конечную точку назначения служебная шина подписки на событие. string

StorageBlobDeadLetterDestination

Name Description Value
endpointType Тип конечной точки для назначения недоставленной буквы 'StorageBlob' (обязательно)
properties Свойства назначения недоставки на основе BLOB-объектов хранилища StorageBlobDeadLetterDestinationProperties

StorageBlobDeadLetterDestinationProperties

Name Description Value
blobContainerName Имя контейнера BLOB-объектов хранилища, который является назначением событий недоставки string
resourceId Идентификатор ресурса Azure аккаунта хранения, который является назначением событий deadletter string

StorageQueueEventSubscriptionDestination

Name Description Value
endpointType Тип конечной точки для назначения подписки на события 'StorageQueue' (обязательно)
properties Свойства очереди хранилища назначения подписки на события StorageQueueEventSubscriptionDestinationProperties

StorageQueueEventSubscriptionDestinationProperties

Name Description Value
queueName Имя очереди хранилища в учетной записи хранения, которая является назначением подписки на событие. string
resourceId Идентификатор ресурса Azure аккаунта хранения, содержащего очередь, являющуюся получателем подписки на событие. string

StringBeginsWithAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'StringBeginsWith' (обязательно)
values Набор значений фильтра. string[]

StringContainsAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'StringContains' (обязательно)
values Набор значений фильтра. string[]

StringEndsWithAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'StringEndsWith' (обязательно)
values Набор значений фильтра. string[]

StringInAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'StringIn' (обязательно)
values Набор значений фильтра. string[]

StringNotInAdvancedFilter

Name Description Value
operatorType Тип оператора, используемый для фильтрации, например NumberIn, StringContains, BoolEquals и других. 'StringNotIn' (обязательно)
values Набор значений фильтра. string[]

WebHookEventSubscriptionDestination

Name Description Value
endpointType Тип конечной точки для назначения подписки на события 'WebHook' (обязательно)
properties Свойства веб-перехватчика назначения подписки на события WebHookEventSubscriptionDestinationProperties

WebHookEventSubscriptionDestinationProperties

Name Description Value
endpointUrl URL-адрес, представляющий конечную точку назначения подписки на событие. string

Примеры использования

Примеры Terraform

Простой пример развертывания подписки на события EventGrid.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "namespace" {
  type      = "Microsoft.EventHub/namespaces@2022-01-01-preview"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      disableLocalAuth     = false
      isAutoInflateEnabled = false
      publicNetworkAccess  = "Enabled"
      zoneRedundant        = false
    }
    sku = {
      capacity = 1
      name     = "Standard"
      tier     = "Standard"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_resource" "storageAccount" {
  type      = "Microsoft.Storage/storageAccounts@2021-09-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    kind = "StorageV2"
    properties = {
      accessTier                   = "Hot"
      allowBlobPublicAccess        = true
      allowCrossTenantReplication  = true
      allowSharedKeyAccess         = true
      defaultToOAuthAuthentication = false
      encryption = {
        keySource = "Microsoft.Storage"
        services = {
          queue = {
            keyType = "Service"
          }
          table = {
            keyType = "Service"
          }
        }
      }
      isHnsEnabled      = false
      isNfsV3Enabled    = false
      isSftpEnabled     = false
      minimumTlsVersion = "TLS1_2"
      networkAcls = {
        defaultAction = "Allow"
      }
      publicNetworkAccess      = "Enabled"
      supportsHttpsTrafficOnly = true
    }
    sku = {
      name = "Standard_LRS"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_resource" "eventhub" {
  type      = "Microsoft.EventHub/namespaces/eventhubs@2021-11-01"
  parent_id = azapi_resource.namespace.id
  name      = var.resource_name
  body = {
    properties = {
      messageRetentionInDays = 1
      partitionCount         = 1
      status                 = "Active"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_resource" "eventSubscription" {
  type      = "Microsoft.EventGrid/eventSubscriptions@2021-12-01"
  parent_id = azapi_resource.storageAccount.id
  name      = var.resource_name
  body = {
    properties = {
      deadLetterDestination = null
      destination = {
        endpointType = "EventHub"
        properties = {
          deliveryAttributeMappings = null
          resourceId                = azapi_resource.eventhub.id
        }
      }
      eventDeliverySchema = "EventGridSchema"
      filter = {
        includedEventTypes = [
          "Microsoft.Storage.BlobCreated",
          "Microsoft.Storage.BlobRenamed",
        ]
      }
      labels = [
      ]
      retryPolicy = {
        eventTimeToLiveInMinutes = 144
        maxDeliveryAttempts      = 10
      }
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}