flume日志收集按时间写入HDFS

首页 » Hadoop » flume日志收集按时间写入HDFS

测试:对一个文件进行监控,文件有追加的时候就按时间存储到hdfs上。

感觉flume挺方便的,练习项目需要,以后再进行具体学习。

a1.sources = r1
 a1.sinks = k1
 a1.channels = c1

 # Describe/configure the source
 a1.sources.r1.type = spooldir
 a1.sources.r1.spoolDir = /home/logs
 a1.sources.r1.fileHeader = true

 # Describe the sink
 ***只修改上一个spool sink的配置代码块 a1.sinks.k1.type = logger
 a1.sinks.k1.type=hdfs
 a1.sinks.k1.hdfs.path=hdfs://flume/%Y-%m-%d/%H%M
 
 ##每隔60s或者文件大小超过10M的时候产生新文件
 # hdfs有多少条消息时新建文件,0不基于消息个数
 a1.sinks.k1.hdfs.rollCount=0
 # hdfs创建多长时间新建文件,0不基于时间
 a1.sinks.k1.hdfs.rollInterval=60
 # hdfs多大时新建文件,0不基于文件大小
 a1.sinks.k1.hdfs.rollSize=10240

# 当目前被打开的临时文件在该参数指定的时间(秒)内,没有任何数据写入,则将该临时文件关闭并重命名成目标文件 a1.sinks.k1.hdfs.idleTimeout=3 a1.sinks.k1.hdfs.fileType=DataStream a1.sinks.k1.hdfs.useLocalTimeStamp=true ## 每五分钟生成一个目录: # 是否启用时间上的”舍弃”,这里的”舍弃”,类似于”四舍五入”。如果启用,则会影响除了%t的其他所有时间表达式 a1.sinks.k1.hdfs.round=true # 时间上进行“舍弃”的值; a1.sinks.k1.hdfs.roundValue=5 # 时间上进行”舍弃”的单位,包含:second,minute,hour a1.sinks.k1.hdfs.roundUnit=minute # Use a channel which buffers events in memory a1.channels.c1.type = memory a1.channels.c1.capacity = 1000 a1.channels.c1.transactionCapacity = 100 # Bind the source and sink to the channel a1.sources.r1.channels = c1 a1.sinks.k1.channel = c1

flume日志收集按时间写入HDFS
分享到:
赞(0) 打赏

评论 5

评论前必须登录!

 

  1. #1

    我也是小白以后多多交流

    你好5个月前 (03-27)
  2. #2

    挺明白的

    小蚯蚓4个月前 (03-28)
  3. #3

    看了那么多博客,就你的能看懂

    我也是渣渣4个月前 (03-28)
  4. #4

    奥利给

    笨鸟先飞4个月前 (03-28)
  5. #5

    给你点赞

    努力4个月前 (03-29)

觉得文章有用就打赏一下弟弟吧

支付宝扫一扫打赏

微信扫一扫打赏

Vieu4.5主题
专业打造轻量级个人企业风格博客主题!专注于前端开发,全站响应式布局自适应模板。
正在播放:

作者想对您说:

累了就停下来听首歌吧

听完后会给您一个好心情

最后

等到您不容易

还希望您能多待一会儿

      00:00/00:00

      登陆仅提取账号昵称,并无其他功能。

      为了服务器更好的运行,请使用第三方账号登陆。

      授权名称使用的公安备案名称——菜鸟奋斗历程,请知悉。