Heka

Heka

Heka用户

Heka架构

Inputs

用于接收数据,有多种输入方式,如:

Splitters

用于将Input收到的数据进行拆分,比如按换行符

Decoders

解析Input/Split之后的数据

Filters

消息处理引擎,可以进行过滤、计算、聚合

Encoders

在输出到Output前将数据处理成Output支持的数据格式

Outputs

可以同时多个输出落地,如:

日志收集架构

1.至简

heka logstreamer Input-> Output到最终落地

2.性能扩展

heka logstreamer Input-> TCP Output -> 汇总层heka TCP Input -> Output到最终落地

3.性能扩展(使用队列)

heka logstreamer Input-> AMQP(Kafka) Output -> 汇总层heka AMQP(Kafka) Input -> Output到最终落地

性能测试

环境:4 CPU虚拟机,CentOS 6.5 syslog协议+文件输出,可达到34K/s