Парсинг XML файлов

Добрый день.
Имеется XML файл выгружаемый из программы для дольнейшей загрузки в 1С. Задача грузить из него данные в Elastic через Filebeat и Logstash. Проблема заключается в том что Filebeat читает файл, но не грузитего дальше в Logstash. Я выяснил по какой причне, сравнив этот файл с файлом-ответом из 1С. Разница всего в одном недостающем бите:
Файл выгрузки для 1С:
Файл выгрузки
Файл-ответ от 1С:
Файл-ответ

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

Проблема не в , проблема в новой строке (0d в первом случае и 0d 0a во втором). Какую ошибку вы получаете и через какие фильтры с какими настройками все это проходит? С параметром line_terminator в FileBeat-е играться не пробовали?

Добрый день.
Проблему вы описали точно, бит 3c выделен случайно, проблема именно в отсутсвии 0a. Попробывал сейчас параметр line_terminator, перебрал все доступные параметры, даныые не передаются в Logstash.
Как я понял данный параметр надо добавить в Filebeat inputs?
Есть какие нибуть еще варианты решения проблемы?

Извиняюсь, все получилось, я изначально не туда вставил параметр line_terminator, расположил в самом конце блока Filebeat inputs, а там у меня уже другие файлы обрабатываются. После вставки в нужное место и применении параметра line_terminator: carriage_return все заработало.
Спасибо за помощь, очень выручили.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.