Я хочу написать партию, которая читает файлы журнала доступа к сайту (csv-файл) с пути каждый день и делает некоторый анализ, используя интеграцию с весной.Spring Integration: Есть ли способ объединиться из «всех» сообщений в канале?
Это упрощенная версия входного файла csv.
srcIp1,t1,path1 srcIp2,t2,path2 srcIp1,t3,path2 srcIp1,t4,path1
Номер доступа на источник ip и путь рассчитывается после некоторой логики фильтрации.
Я создал входной канал, чья полезная нагрузка - это анализируемая строка журнала, и применяется фильтр, и, наконец, агрегатор для вычисления конечного результата. Проблема заключается в том, что должно быть правильной группой релизов stragety, по умолчанию релиз stragety (SequenceSizeReleaseStrategy) не работает.
Кроме того, любой другой пружинной integraion из выпуска коробки
стратегии (ExpressionEvaluatingReleaseStrategy, MessageCountReleaseStrategy, MethodInvokingReleaseStrategy, SequenceSizeReleaseStrategy, TimeoutCountSequenceSizeReleaseStrategy)
, кажется, не соответствует моим потребностям.
Или интеграция Spring предполагает, что канал несет поток сообщений, где нет понятия «окончание сообщения» и не подходит для моей проблемы здесь?
Канал просматривает свою полезную нагрузку в качестве потока сообщений. Проблема заключается в том, что в контексте сообщения в строке отсутствует хороший способ наложения релиз-stragety. Поэтому я изменил тип полезной нагрузки на одно сообщение «все строки все файлы "вместо одного сообщения в строке. Не очень хорошая идея, но не могла придумать лучшего. –