Не удалось загрузить positionFile: при использовании источника TAILDIR в потоке я получаю сообщение об ошибке

Я работаю над Flume, чтобы добавить данные из локального каталога в HDFS, используя Flume Source TAILDIR.

Мой вариант использования - выполнить дельта-загрузку. Если новая строка появится в исходном файле в локальном каталоге, она будет добавлена ​​​​в hdfs.

Это мой файл Flume Conf:

#configure the agent
agent.sources=r1
agent.channels=k1
agent.sinks=c1

agent.sources.r1.type=TAILDIR
agent.sources.r1.positionFile = /home/flume/Documents/taildir_position.json
agent.sources.r1.filegroups=f1
agent.sources.r1.filegroups.f1=/home/flume/Documents/spooldir/
agent.sources.r1.batchSize = 20
agent.sources.r1.writePosInterval=2000
agent.sources.r1.maxBackoffSleep=5000
agent.sources.r1.fileHeader = true

agent.sources.r1.channels=k1
agent.channels.k1.type=memory
agent.channels.k1.capacity=10000
agent.channels.k1.transactionCapacity=1000   

agent.sinks.c1.type=hdfs
agent.sinks.c1.channel=k1
agent.sinks.c1.hdfs.path=hdfs://localhost:8020/flume_sink
agent.sinks.c1.hdfs.batchSize = 1000
agent.sinks.c1.hdfs.rollSize = 268435456
agent.sinks.c1.hdfs.writeFormat=Text

при выполнении команды flume: flume-ng agent -n agent -c conf -f /home/swechchha/Documents/flumereal.conf

Я получаю сообщение об ошибке Загрузка файла Json Не удается загрузить файл Json

Я получаю сообщение об ошибке при загрузке файла JSON.


person Community    schedule 11.06.2018    source источник
comment
Это похоже на проблему с правами доступа. Вы проверили, что файл JSON может быть доступен пользователю flume?   -  person Cosmin Ioniță    schedule 13.06.2018
comment
да, я проверяю, что к нему обращается пользователь   -  person    schedule 15.06.2018


Ответы (2)


Вот код. Он падает на строке 110. Убедитесь, что пользователь flume имеет доступ к этому файлу JSON и что файл правильно отформатирован.

person Cosmin Ioniță    schedule 13.06.2018
comment
Спасибо за ваш ответ, я проверил его, и у меня возникла проблема, с которой я борюсь. Я пишу свой ответ. - person ; 15.06.2018

У Flume.conf, упомянутого в вопросе, возникла проблема.

ИСТОЧНИК TAILDIR: следите за указанными файлами и следите за ними практически в режиме реального времени после обнаружения новых строк, добавленных к каждому файлу. Если новые строки записываются, этот источник будет повторять их чтение в ожидании завершения записи.

При записи каталог свойств файловых групп может содержать несколько файлов, в этом случае он должен быть указан как путь к каталогу/ .тип файла.

agent.sources.r1.filegroups.f1=/home/flume/Documents/spooldir/.*txt.*

Затем запустите flume.conf и проверьте результат, он будет работать нормально.

person Community    schedule 15.06.2018