Я пытаюсь получить поток данных с ftp-сервера, который имеет следующую структуру:
Папка A -> Файл1, Файл2, ... Файл28
Папка B -> Файл1, Файл2, ... Файл28
FolderC -> File1, File2, ... File28
Эти файлы регулярно обновляются каждые 2 часа один за другим. Каждые 2 часа после того, как все загрузки завершены, я хочу написать флаг-файл, который фактически завершен. Если не все были обновлены вовремя, но хотя бы один (то есть через 10 минут), я все еще хочу написать файл флага, который обрабатывается другими цепочками процессов, которые затем должны иметь дело с отсутствующими данными. Каждая папка нуждается в файле флага: FolderA.flag, FolderB.flag ....
Проблема в том, что я вроде не совсем понимаю, как работает оповещение и ожидание. Я хочу поставить новый Flowfile в ожидании, как только первый файл в папке будет обновлен. Поэтому я поместил атрибут в файлы с правой стороны, который называется «FolderName». Если я подключаю узел ожидания к успеху нового атрибута, я получаю 28 файлов для каждой папки в очередь ожидания. Но я хочу только одного. Вот почему я генерирую новый потоковый файл на стороне поездки (я действительно хотел бы, чтобы этот узел был удален, если это возможно, и узел ожидания был подключен к правой цепочке, потому что я не знаю, какие папки находятся на сервере)
«Идентификатор сигнала выпуска» установлен в «FolderName» как в уведомлении, так и в ожидании. Я не знаю, что установить для «Имя счетчика сигналов», и оно не работает так, как мне бы хотелось.
Текущее поведение состоит в том, что каждый раз, когда GenerateFlowFile запускается, узел ожидания на самом деле не ждет, а непосредственно перемещается и запускает файл флага после того, как у меня был один успешный запуск с правой стороны. Нужно ли сбрасывать счетчик триггеров (он не «расходуется»?)
Как правильно соединить обе стороны?
Это изображение моего кеша после того, как одна папка прошла. Почему в записи 28 раз, а не один раз с последним счетом? Это также запускает узел ожидания. (Примечание: в настоящее время я для тестирования указал, что он должен называть триггер ожидания / уведомления точно как FolderName и использовать только одну конкретную папку в ListFTP, чтобы улучшить отладку)
Но узел ожидания теперь всегда срабатывает. Поскольку кэшированная сущность не истекла или не удалена. Я думаю, я должен удалить это вручную?