flume系列之:学会flume开发调试,查看flume event数据格式,并根据flume event数据格式开发拦截器
根据不同的需求,flume可能需要采用不同类型的source、channel、sink,flume配置采取热部署,配置更新即可生效。在开发flume新功能时,直接使用source、channel、sink的类型可能无法一次性把流程跑通。因此可以基于channel类型是memory、sink类型是logger来测试开发flume新功能,logger会把flume的event打印到命令行终端,在整个流程跑通后,再把source、channel、sink类型替换为flume要实现功能的类型。
在此基础上根据flume event的数据格式,开发符合需求的拦截器,从而实现flume新功能。
下面以Kafka Source为例,channel类型选择memory,sink类型选择logger为例,来查看flume的event,并详细阐述如何根据flume的event开发拦截器。
一、声明source、channel、sink
agent-optics.sources = source1
agent-optics.channels = channel1
agent-optics.sinks = sink1
# link source to sink via channel
agent-optics.sources.source1.channels