Подключение к концентратору событий из рабочих процессов в Azure Logic Apps

Область применения: Azure Logic Apps (потребление)

Соединитель Центров событий Azure помогает подключать рабочие процессы приложения логики к концентраторам событий в Azure. Затем вы можете отслеживать рабочие процессы и управлять событиями, отправленными в концентратор событий. Например, рабочий процесс может проверять, отправлять и получать события из концентратора событий. В этой статье содержится руководство по началу работы с соединителем Центров событий Azure, в котором показано, как подключиться к концентратору событий и добавить в рабочий процесс триггер или действие Центров событий.

Дополнительные сведения о Центрах событий Azure или Azure Logic Apps см. в статьях Что такое Центры событий Azure или Что такое Azure Logic Apps.

Доступные операции

Сведения обо всех операциях и другую техническую информацию (например, свойства, ограничения и т. д.) можно найти на странице справочника по соединителю Центров событий.

Примечание.

Для приложений логики, размещенных в среде службы интеграции (ISE), версия соединителя ISE использует ограничения сообщений для ISE.

Необходимые компоненты

Проверка разрешений и получение строки подключения

Чтобы рабочий процесс мог использовать концентратор событий, проверьте свои разрешения и получите строку подключения для доступа к пространству имен концентратора событий.

  1. На портале Azure перейдите к пространству имен Центров событий (но не к конкретному концентратору событий).

  2. В меню пространства имен в разделе Параметры выберите Политики общего доступа. Убедитесь, что в столбце Утверждения указаны как минимум разрешения Управление для этого пространства имен.

    Screenshot showing the Azure portal, your Event Hubs namespace, and

  3. Если вы хотите в дальнейшем вручную ввести сведения о подключении, получите строку подключения для пространства имен концентратора событий.

    1. В столбце Политика выберите RootManageSharedAccessKey.

    2. Найдите строку подключения первичного ключа. Скопируйте и сохраните строку подключения для дальнейшего использования.

      Screenshot showing the primary key's connection string with the copy button selected.

      Совет

      Чтобы проверить, относится ли строка подключения к пространству имен Центров событий или к определенному концентратору событий, убедитесь, что она не содержит параметр EntityPath. Если в строке подключения есть этот параметр, значит она относится к определенной "сущности" Центров событий и ее нельзя использовать в рабочем процессе.

Создание подключения концентратора событий

При первом добавлении триггера или действия Центров событий предлагается создать подключение к концентратору событий.

  1. При появлении запроса выберите один из следующих вариантов:

    • Предоставьте следующие сведения о подключении:

      Свойство Обязательное поле значение Описание
      Имя подключения Да <имя_соединения> Имя создаваемого подключения
      Пространство имен Центров событий Да <пространство_имен_концентраторов_событий> Выберите пространство имен Центров событий, которое необходимо использовать.
    • Чтобы ввести ранее сохраненную строку подключения вручную, выберите Вручную введите сведения о подключении. Сведения о том, как найти строку подключения, см. в разделе Проверка разрешений для пространства имен концентраторов событий и определение строки подключения.

  2. Выберите нужную политику Центров событий, если она еще не выбрана, и нажмите Создать.

    Screenshot showing the provided connection information with

  3. После создания подключения перейдите к пункту Добавить триггер Центров событий или Добавить действие Центров событий.

Добавление триггера Центров событий

В Azure Logic Apps каждый рабочий процесс должен запускаться по триггеру, который активируется, если выполняется заданное условие. При каждом срабатывании триггера служба Logic Apps создает экземпляр рабочего процесса и запускает выполнение шагов в рабочем процессе.

Следующие шаги описывают общий способ добавления триггера, например, При наличии событий в концентраторе событий. В этом примере показано, как добавить триггер, проверяющий новые события в концентраторе событий и запускающий рабочий процесс при наличии новых событий.

  1. Откройте рабочий процесс пустого приложения логики в конструкторе Logic Apps.

  2. В поле поиска операций введите event hubs. Из списка триггеров выберите триггер При наличии событий в концентраторе событий.

    Select trigger

  3. Если будет предложено создать подключение к концентратору событий, укажите запрашиваемые сведения о подключении.

  4. В триггере укажите сведения о концентраторе событий, который требуется отслеживать, например:

    Свойство Обязательное поле Описание
    Имя концентратора событий Да Имя концентратора событий, который требуется отслеживать.
    Тип содержимого No Тип содержимого события. Значение по умолчанию — application/octet-stream.
    Имя группы потребителей No Имя группы потребителей Центров событий для чтения событий. Если оно не задано, используется группа потребителей по умолчанию.
    Максимальное число событий No Максимальное количество событий. Триггер возвращает значение от 1 до количества событий, заданного в этом свойстве.
    Интервал Да Положительное целое число, которое описывает, как часто выполняется рабочий процесс с учетом заданной частоты.
    Периодичность Да Единица измерения времени, используемая для повторения.

    Чтобы отобразить дополнительные свойства, откройте список Добавить новый параметр. Выбор параметра приводит к добавлению этого свойства в триггер, например:

    Trigger properties

    Другие свойства

    Свойство Обязательное поле Описание
    Схема содержимого No Схема содержимого JSON для событий, считываемых из концентратора событий. Например, если указать схему содержимого, рабочий процесс можно будет активировать только для тех событий, которые соответствуют схеме.
    Минимальный ключ секции No Введите минимальное количество идентификаторов секций для считывания. По умолчанию считываются все секции.
    Максимальный ключ секции No Введите максимальное количество идентификаторов секций для считывания. По умолчанию считываются все секции.
    Часовой пояс No Применяется только при указании времени начала, так как этот триггер не принимает смещение от UTC. Выберите часовой пояс, который необходимо применить.

    Дополнительные сведения см. в статье Создание, планирование и выполнение повторяющихся задач и рабочих процессов с помощью Azure Logic Apps.

    Время начала No Укажите время начала в этом формате:

    ГГГГ-ММ-ДДTчч:мм:сс, если выбран часовой пояс

    –или–

    ГГГГ-ММ-ДДTчч:мм:ссZ, если часовой пояс не выбран.

    Дополнительные сведения см. в статье Создание, планирование и выполнение повторяющихся задач и рабочих процессов с помощью Azure Logic Apps.

  5. По завершении на панели инструментов конструктора выберите Сохранить.

  6. Теперь продолжайте добавлять одно или несколько действий, чтобы можно было выполнять другие задачи с помощью выходных данных триггера.

    Например, чтобы отфильтровать события по определенному значению, например по категории, можно добавить условие, чтобы действие Отправить событие отправляло только те события, которые соответствуют условию.

Поведение опроса триггера

Все триггеры концентратора событий являются триггерами длинного опроса. Это значит, что при срабатывании триггер обрабатывает все события, а затем 30 секунд ожидает, пока в концентраторе событий не появятся дополнительные события. Если в течение 30 секунд события не появляются, триггер пропускается. В противном случае триггер продолжит считывать события до момента, пока концентратор событий не останется пустым. Следующий опрос триггера происходит на основе интервала повторения, указанного в свойствах триггера.

Например, если для триггера настроены четыре секции, то задержка при опросе всех секций триггером может составить до двух минут. Если в течение этой задержки не получены какие-либо события, выполнение триггера пропускается. В противном случае триггер продолжит считывать события до момента, пока концентратор событий не останется пустым. Следующий опрос триггера происходит на основе интервала повторения, указанного в свойствах триггера.

Если вам известны конкретные разделы, в которых отображаются сообщения, можно обновить триггер, чтобы считывать события только из этих разделов, установив максимальный и минимальный ключ раздела. Дополнительные сведения см. в разделе Добавление триггеров концентратора событий.

Поведение контрольной точки триггера

Когда триггер Центров событий считывает события из каждой секции в концентраторе событий, триггер использует собственное состояние, чтобы сохранить сведения о смещении потока (позиция события в секции) и секции, из которых триггер считывает события.

При каждом запуске рабочего процесса триггер считывает события из секции, начиная со смещения потока, который хранится в состоянии триггера. При циклическом переборе триггер выполняет итерацию по каждой секции в концентраторе событий и считывает события в последующих выполнениях триггера. За одно выполнение извлекаются события из одной секции за раз.

Триггер не использует эту возможность контрольных точек в хранилище, что не приводит к дополнительным затратам. Однако при обновлении триггера Центров событий сбрасывается состояние триггера, что может привести к тому, что триггер будет считывает события в начале потока.

Добавление действия Центров событий

В службе Azure Logic Apps действие следует за триггером или другим действием и выполняет определенную операцию рабочего процесса. Следующие этапы описывают общий способ добавления действия, например отправка события. В этом примере рабочий процесс запускается с помощью триггера Центров событий, который проверяет наличие новых событий в концентраторе событий.

  1. Откройте рабочий процесс приложения логики в конструкторе Logic Apps.

  2. В триггере или другом действии добавьте новый этап.

    Чтобы добавить этап между существующими этапами, наведите указатель мыши на стрелку. Нажмите появившийся знак "плюс" (+), а затем выберите Добавить действие.

  3. В поле поиска операций введите event hubs. В списке действий выберите действие с именем Отправить событие.

    Select

  4. Если будет предложено создать подключение к концентратору событий, укажите запрашиваемые сведения о подключении.

  5. В действии укажите сведения о событиях, которые необходимо отправить.

    Свойство Обязательное поле Описание
    Имя концентратора событий Да Концентратор событий, куда необходимо отправить событие.
    Содержимое No Содержимое для события, которое необходимо отправить
    Свойства No Свойства приложения и значения для отправки
    Ключ секции No Идентификатор секции для отправки события.

    Чтобы отобразить дополнительные свойства, откройте список Добавить новый параметр. Выбор параметра приводит к добавлению этого свойства в действие, например:

    Select event hub name and provide event content

    Например, вы можете отправить выходные данные из триггера Центров событий в другой концентратор событий:

    Send event example

  6. По завершении на панели инструментов конструктора выберите Сохранить.

Справочник по соединителям

Сведения обо всех операциях и другую техническую информацию (например, свойства, ограничения и т. д.) можно найти на странице справочника по соединителю Центров событий.

Примечание.

Для приложений логики, размещенных в среде службы интеграции (ISE), версия соединителя ISE использует ограничения сообщений для ISE.

Следующие шаги