申请单审批通过->申请联调
1、打开申请单->找到Test配置->拷出来->粘到本地编辑器工具。
Protobuf格式时:
=====2、首先修改解析类,将编写好的解析类的全限定名拷贝到Sink的=====className上
=====本地验证解析类是否正常:
=====KafkaTools抓两条数据->本地测试通过
=====3、将Protobufjar打包放入云盘
4、登陆测试Ambari,将修改好的flume配置拷贝到对应的节点
保存配置,先不重启服务
=====5、进入对应的Flumelinux节点,将上传的云盘的jar下载到flume的lib目录下
=====注意: 每次更新protobufjar包前,先将查看下文件大小,再将原来的jar包移动到~目录下
下载完成后,对比新文件大小是否与旧文件差别不大
6、进入ambari
如果是新增agent,需要重启节点
如果是旧agent上修改,只需要重启agent即可
注意:1、在对节点的启停的时候要先stop,然后再start,不可以restart.
restart的后果是有的agent还没有停就又起来一个 在起两个的情况下
你在ambari里手动关掉,看似关掉 但其实只管掉了一个 那个还在跑
这是第一个问题 产生的第二个问题是 由于有两个agent在干相同的活,这种情况下会出现采集到的数据到目的地会少字段。
2、自己在项目里新加了一个protobuf的格式转换类,打jar包的问题用idea自带的就行 ,在服务器中将新的jar包给旧的替换掉了就行。
3、写转化类时,除了日期格式的,都可以用get,不然就需要进行判断来
写了,可以参考别的是怎么写的,还有 map 要写< ,>泛型不要忘了。
4、每一个组件都要加监控地址不然测试的时候会error
5、什么情况才是正常的日志呐,就是有start,有写入提醒,flume是一
批一批的往ES里写,所以error意味着是一批数据的丢失。
6、error的时候,看那一行,会指明哪里出错了,在jar包里找到然后修
改就行了。
7、当把jar包放到云盘时 如果显示和原来的重名了 不需要替换 直
接把原来的删掉就行了 然后将新的放进去 然后再替换 替换是
wget -O 包名 云盘地址/download
遇到的问题以及解决方法:
1、问题:别人给的数据我们采集放到相应的地方后,别人没问题的情况
下,那有概率是自己写的数据转换格式的某个转换方式的不对,比如这次遇到的时间格式转换不正确,使下家查不到数据。
解决办法:解决办法就是现有的格式不对的情况下,咱们模仿者它写一个符合要求的,(稍微改改就可以)