【问题标题】:roll setting of flume hdfs sink水槽 hdfs 水槽的滚动设置
【发布时间】:2018-11-20 08:05:34
【问题描述】:

下面是我在flume.conf中的设置:

agent.sources = srcpv
agent.channels = chlpv
agent.sinks = hdfsSink
agent.sources.srcpv.type = exec
agent.sources.srcpv.command = tail -F /var/log/collector/web/pv.log
agent.sources.srcpv.channels = chlpv
agent.channels.chlpv.type = memory
agent.channels.chlpv.capacity = 1000000
agent.channels.chlpv.transactionCapacity = 100
agent.sinks.hdfsSink.type = hdfs
agent.sinks.hdfsSink.channel = chlpv
agent.sinks.hdfsSink.hdfs.path = hdfs://hadoop01:8020/flume/web/pv/
agent.sinks.hdfsSink.hdfs.filePrefix = pv-
agent.sinks.hdfsSink.hdfs.rollSize = 1024
agent.sinks.hdfsSink.hdfs.rollInterval= 30
agent.sinks.hdfsSink.hdfs.rollCount = 10

我希望文件可以按一定的大小或间隔滚动,但是滚动设置(rollSize、rollInterval、rollCount)无法生效,没有生成hdfs文件。几分钟后我得到了这个错误:

[SinkRunner-PollingRunner-DefaultSinkProcessor] ERROR org.apache.flume.sink.hdfs.HDFSEventSink - process failed java.lang.OutOfMemoryError: GC overhead limit exceeded

谁能帮忙指出适当的 HDFS Sink 设置?

【问题讨论】:

    标签: hdfs flume sink


    【解决方案1】:

    运行 flume 时,您的 Java 内存似乎用完了。

    您可以尝试在 flume-env.sh 文件中添加以下行:

    export JAVA_OPTS="-Xms100m -Xmx2g -Dcom.sun.management.jmxremote"

    根据您的系统配置增加值 Xmx。

    希望这会有所帮助:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多