前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >日志采集agent对比

日志采集agent对比

原创
作者头像
用户2821537
修改2020-03-17 18:47:57
2.6K0
修改2020-03-17 18:47:57
举报
文章被收录于专栏:日志采集日志采集

一、常见agent 对比

功能项

logstash

filebeats

fluentd

logtail(阿里)

loglistener(CLS)

日志读取

轮询

轮询

轮询

事件

事件

日志格式

支持delimiter、key-value、json等主流格式

json、单行和多行

支持delimiter、key-value、json等主流格式

支持delimiter、key-value、json等主流格式

支持delimiter、key-value、json等主流格式

采集源

文件和TCP(Lumberjack和syslog)

文件和TCP(syslog和\n分隔符)

文件和TCP(json)

文件和TCP(Lumberjack和syslog)

文件

发送压缩

插件支持

支持

插件支持

支持

支持

热升级

不支持

不支持

不支持

支持

不支持

实现语言

JRuby(JVM)

go

CRuby和C

C/C++

C/C++

多核支持

支持

支持

支持但受GIL限制

支持

不支持

支持平台

Linux、windows和MAC

Linux、windows和MAC

Linux、windows和MAC

Linux和windows

Linux

备注

可以作为采集agent和server,插件很多ali提供了直接写日志服务的插件

采集agent直接写ES或者支持输出Lumberjack 协议

支持写入到kafka、hdfs等

写入到aliyun日志服务, 或者接收Lumberjack协议的输入

写入到腾讯云CLS

注:beats系列(MetricBeat、PacketBeat、Winlogbeat、Auditbeat、Filebeat、Heartbeat等)

特点对比:

  • Logstash支持所有主流日志类型,插件支持最丰富,可以灵活DIY,但性能较差,JVM容易导致内存使用量高。
  • filebeats 很轻量单支持的特性优先,性能很好
  • Fluentd支持所有主流日志类型,插件支持较多,性能表现较好。
  • Logtail占用机器CPU/内存资源最少,性能吞吐量较好,针对常用日志场景支持全面,但缺少插件等机制,灵活性和可扩展性不如以上两个客户端。

二、协议格式

常用的协议格式有:

  1. syslog(RFC3164RFC5424
  2. Lumberjack 文本编码的格式按照kv顺序存储
  3. \n 分隔
  4. json
  5. pb : 参考 https://cloud.tencent.com/document/product/614/16907

三、对比loglistener和logtail

监测指标: cpu 、内存、磁盘、网络消耗和 qps情况,监控方式3秒钟一个点求均值。

测试日志格式: nginx 日志 分隔符和单行全文

测试环境: CVM: 2cpu + 4Gmem + 200Mbps

四、对比结果

  1. 单行全文-10w/s qps

分析: cpu使用率logtail比loglistener低5%左右,但是内存比loglistener高了差不多一倍,网络消耗基本差不多,采集能力基本上都是10w/s没有积压。

2. 分隔符-10w/s qps

分析: 采集能理上loglistener是1.96w/s,logtail是4.93w/s都有积压,cpu logtail 高20%,单内存消耗是loglistener

的3.5倍,网络差不多是4倍。

3. 对比分析

测试项

qps

cpu

内存

网络

单行全文(10w/s)

loglistener

10w/s

30%

40MB

13MB

logtail

10w/s

38%

80MB

13MB

分隔符(10w/s)

loglistener

3.69w/s

80%

40MB

<5MB

logtail

4.93w/s

100%

145MB

20MB

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
日志服务
日志服务(Cloud Log Service,CLS)是腾讯云提供的一站式日志服务平台,提供了从日志采集、日志存储到日志检索,图表分析、监控告警、日志投递等多项服务,协助用户通过日志来解决业务运维、服务监控、日志审计等场景问题。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档