难点汇总

模块一:flume收集log文件

一:flume的source不满足我们的需求,所以自定义source。遇到的难点:

1,实时收集的数据,采集后出现乱码问题。最后发现是因为RandomAccessFile 读写文件时,不管文件中保存的数据编码格式是什么   使用 RandomAccessFile对象方法的 readLine() 都会将编码格式转换成 ISO-8859-1 所以 输出显示是还要在进行一次转码

new String(ra.readLine().getBytes("ISO-8859-1"),"utf-8")
2,在start方法上Executors.newSingleThreadExecutor();以后在stop方法中关闭线程池,可能调用一次shutdown方法并不能关闭线程池。我们用的方法是,模仿flume
中executor类的方法来关闭线程池。

3,flume中的一个agent分为source,channel,sink。

二:flume对接kafka

1,安装kafka0.10的时候,按照要求更改配置文件后。消费端与生产端并不能建立连接。解决办法:在server.properties的添加了一个host.name=主机名。在kafka集群上都进行

更改。 ERROR Error when sending message to topic chao with key: null, value: 4 bytes with error:

2,flume中有kafkaChannel,就是source采集数据后,直接传送到kafka当中

a1.channels.c1.type = org.apache.flume.channel.kafka.KafkaChannel
a1.channels.c1.kafka.bootstrap.servers = node1:9092,node3:9092,node4:9092
a1.channels.c1.kafka.topic = lichao
a1.channels.c1.parseAsFlumeEvent = false//说明:kafka消费端消费数据,默认的是event,把这个参数改成false·,就可以了。以后消费数据相当与以一般的文本形式。

三:kafka对接HDFS

1.在一台机器上安装jdk
2.解压flume-ng
3.创建flume的配置文件kafka-hdfs.conf
4.添加flume依赖hdfs的jar包
5.将hdfs的配置文件放入到flume的conf目录下(core-site.xml,hdfs-site.xml)
6.启动flume

四:kafka对接Elastic Serath

问题整理:安装完elastic后,要安装ik分词器,跟sql插件。我事先创建了一个sql空目录,但是后来启动elastic总是启动后又闪退,后来看错误日志log,发现是这个空文件夹搞的

问题。解决办法,将这个空文件夹删除后,重新启动就可以了。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值