Фабрика данных Azure: событие не запускает конвейер

Я настроил конвейер фабрики данных Azure, содержащий действие копирования. Для целей тестирования и источник, и приемник являются хранилищами BLOB-объектов Azure.

Я не хочу выполнять конвейер, как только новый файл будет создан в исходном хранилище BLOB-объектов Azure.

Я создал триггер типа BlovEventsTrigger. Путь к BLOB-объекту начинается с //

Я использую Cloud Storage Explorer для загрузки файлов, но он не запускает мой конвейер. Чтобы понять, что не так, как я могу проверить, запущено ли событие? Есть идеи, что может быть не так?

Спасибо


person user1005448    schedule 02.07.2018    source источник


Ответы (5)


Повторяя то, что говорили другие:

  • Необходимо использовать учетную запись хранения V2
  • Название триггера должно содержать только буквы, цифры и символ '-' (это ограничение скоро будет снято).
  • Должна быть зарегистрирована подписка у поставщика ресурсов Event Grid (это будет сделано для вас в ближайшее время через UX)
  • Триггер делает доступными следующие свойства @triggerBody().folderPath и @triggerBody().fileName. Чтобы использовать их в своем конвейере, вы должны сопоставить их с параметрами конвейера и использовать их как таковые: @pipeline().parameters.paramaetername.

Наконец, в зависимости от параметров конфигурации, путь к BLOB-объекту начинается с //, не соответствует ни одному событию BLOB-объекта. UX фактически покажет вам сообщение об ошибке, говорящее, что это значение недействительно. См. Ссылку Документация по триггеру на основе событий с примерами действующей конфигурации.

person Cesar Hernandez    schedule 03.07.2018

Пожалуйста, укажите это. Во-первых, это должно быть хранилище v2. Во-вторых, вам нужно зарегистрировать его в сетке событий. https://social.msdn.microsoft.com/Forums/azure/en-US/db332ac9-2753-4a14-be5f-d23d60ff2164/azure-data-factorys-event-trigger-for-pipeline-not-working-for-blob-creation-deletion-most-of-the?forum=AzureDataFactory

person Fang Liu    schedule 02.07.2018
comment
Да, я использую хранилище v2, а также зарегистрированную сетку событий. Есть ли способ отладки, чтобы я мог убедиться, что событие запущено, или как его устранить? - person user1005448; 03.07.2018
comment
Вы тоже это правило проверяли? Также убедитесь, что имя вашего триггера содержит только буквенно-цифровые буквы, цифры и символ «-». Пробелы и специальные символы не допускаются. - person Fang Liu; 03.07.2018

Кажется, есть ошибка с триггером хранилища BLOB-объектов: если у вас есть несколько триггеров, выделенных для одного контейнера BLOB-объектов, ни один из триггеров не сработает.

По некоторым причинам (еще одна ошибка, но на этот раз в фабриках данных?), Если вы несколько раз отредактируете свой триггер в окнах фабрики данных, фабрика данных, похоже, потеряет отслеживание триггеров, которые она создает, и ваш единственный триггер может в конечном итоге создать несколько повторяющихся триггеров в хранилище BLOB-объектов. Это условие активирует первую ошибку, описанную выше: триггер хранилища BLOB-объектов больше не срабатывает.

Чтобы исправить это, удалите повторяющиеся триггеры. Для этого перейдите к ресурсу хранилища больших двоичных объектов на портале Azure. Перейдите к колонке "События". Оттуда вы увидите все триггеры, которые фабрики данных добавили в ваше хранилище больших двоичных объектов. Удалите дубликаты. введите здесь описание изображения

person Berthier Lemieux    schedule 02.08.2018
comment
Обратите внимание, что с июля 2019 года, если у вас есть два триггера в одном контейнере, вам нужно будет использовать структуру подпапок для фильтрации событий из сетки событий. Здесь вы используете путь к Blob, который начинается и заканчивается параметрами. Например: Триггер №1 - container / foo / foo.csv Триггер №2 - container / bar / bar.csv Они будут правильно фильтровать и запускать независимо. Вот пример параметров для сопоставления. ! Действительный триггер < / а> - person kirikintha; 23.07.2019

Если вы создаете свой триггер с помощью шаблона руки, убедитесь, что вы знаете о эта ошибка. Свойство триггера runtimeState (также известное как «Активировано») может быть установлено как «Остановлено» только через шаблон руки. Триггер нужно будет активировать через PowerShell или портал ADF.

person jschmitter    schedule 17.01.2020

И теперь, 20.06.2021, то же самое для меня: триггер события не работает, хотя при редактировании его определения в DF он показывает все мои файлы в папке, которые совпадают. Но когда я добавляю в эту папку новый файл, ничего не происходит!

person gunn    schedule 20.06.2021