智能日志管理平台

  • logkit-pro与主流收集组件的功能性能对比

    最近更新时间:2018-08-09 19:12:52

    开源收集组件之间的功能性能对比:
    该场景我们主要针对是是三个收集工具都支持的从文件读取,进行数据解析,再发送到文件的过程,总体的对比结论见下表。

    logkit-pro logstash fluentd filebeat
    可视化配置 人性化的可视化配置,使用体验流畅 文件配置 文件配置 文件配置
    使用难度 可视化配置,上手简单 文件配置,上手一般 上手困难,文档匮乏 文档详细,demo较多
    数据流处理 支持 支持 支持 不支持
    可收集的数据源 丰富 丰富 一般 丰富
    中文文档 丰富
    运行时CPU占用情况 可控,默认一核以内 不可控,至少二核~三核 可控,一核以内 可控,正常二核左右
    运行时内存占用情况 100M以内 600~700M 50M左右 600~700M
    系统监控 支持 支持 不支持 不支持
    发送消息添加系统信息 支持且可按需添加 支持,强制添加 仅支持timestamp 支持,强制添加
    集群管理 支持 不支持 不支持 不支持
    售后支持 完善 一般 一般 一般
    定制化开发 支持 不支持 不支持 不支持
    开发语言 Golang Java Ruby Golang

    以下是该测试的测试环境信息:
    CPU型号:Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz*1
    CPU核心数:2
    CPU线程数:4
    Memory信息:4GB2133MHz\2
    Medium Type:SSD

    针对场景的功能性能对比:
    在场景功能的对比测试中,我们主要针对logkit-pro发送到pandora,logtail发送到阿里云日志平台,logstash发送到Elasticsearch集群进行测试。对比结果如下。

    logtail logkit-pro logstash
    原始文件大小 1.3G(7000000条记录) 1.3G(7000000条记录) 1.3G(7000000条记录)
    运行时占用资源情况 70~80%CPU,100M 以内 mem 80~90%CPU,100M 以内 mem 80~90%CPU,900M mem
    耗时 5分钟内 5分钟内 50~60分钟
    历史数据收集 不支持 支持 支持
    数据处理出错解决方案 阻塞,报错(报错信息无法理解) 持续发送,错误日志按原始格式发送,显示错误 阻塞,控制台打印错误日志
    使用门槛 较低,高阶功能可视化支持不佳 极低,初、高级功能均具备可视化配置 较高,需要自建es集群
    运行时内存占用情况 100M以内 600~700M 50M左右
    输出支持 仅支持发送到阿里云 支持多种输出方案 支持多种输出方案
    数据源多重收集 不支持 支持 支持
    开发语言 C/C++ Golang Java
    注意 logtail收集方式对于阿里云的ECS支持较好,而对于线下机器的支持并不友好 - -

    以下是该测试的测试环境信息:
    CPU型号:Intel(R) Xeon(R) CPU E5-2403 0 @ 1.80GHz*8
    CPU核心数:4*8
    CPU线程数:1*8
    Memory信息:94GB
    Medium Type:Physical

    以下是表格一中结果的详细实验数据。
    按原始文本逐行解析:

    logkit-pro logstash fluentd filebeat
    用时 70s 68s 206s 143s
    原文件大小 1.3G 1.3G 1.3G 1.3G
    生成文件大小 2.2G 2.2G 1.6G 3.8G
    运行占用资源 51.0%CPU,83M+ MEM 247.0%CPU,646M+ MEM 98.0%CPU,54M- MEM 211.5%CPU,13M MEM
    启动占用资源 同运行时 304.0%CPU,702M+ MEM 同运行时 同运行时
    注意 - - - 默认会添加许多系统字段

    按固定分隔符(csv)解析

    logkit-pro logstash fluentd filebeat
    用时 62s 226s 794s 301s
    原文件大小 913M 913M 913M 913M
    生成文件大小 1.5G 2.5G 1.3G 3.6G
    运行占用资源 85.9%CPU,79M MEM 247.0%CPU,581M- MEM 98.0%CPU,48M- MEM 205.9%CPU,685M MEM(total)
    启动占用资源 同运行时 301.0%CPU,505M+ MEM 同运行时 同运行时
    注意 - 默认添加额外系统信息,不可配置 - filebeat不支持对数据的parser 和transform操作,需要配合logstash使用

    按正则表达式(grok)方式解析

    logkit-pro logstash fluentd filebeat
    用时 173s 150s 187s 210s
    原文件大小 913M 913M 913M 913M
    生成文件大小 1.5G 2.6G 1.3G 3.5G
    运行占用资源 96.5%CPU,78M+ MEM 119.1%CPU,520M+ MEM 95.3%CPU,62M- MEM 219.2%CPU,716M+ MEM(total)
    启动占用资源 同运行时 305.5%CPU,534M+ MEM 同运行时 同运行时

    注:由于filebeat仅支持数据收集,对于数据流的处理需要和logstash配合使用,上表中的运行时CPU和内存占用情况均为filebeat和logstash总量的占用情况。

    以上内容是否对您有帮助?
  • Close