@pockry
2015-04-09T17:45:05.000000Z
字数 1927
阅读 3261
运维
日志管理
APM
ITOA
摘要:这篇文章分别从on-premises、SaaS,以及开源三种模式选取一个有代表性的日志管理工具进行分析,Splunk、Sumo Logic和Logstash分别对应这三种不同的模式。
在生产环境记录应用的运行日志已经成为惯例,但日志需要经过处理和分析才有意义,第三方日志管理工具的出现正旨在解决这个问题。软件分析公司Takipi负责产品市场的Josh Dreyfuss今日撰文,比较了三个有代表性的日志管理工具:Splunk、Sumo Logic和Logstash,从功能、易用性、资源占用等方面分析了它们的优缺点。
这篇文章分别从on-premises、SaaS,以及开源三种模式选取一个有代表性的日志管理工具进行分析,Splunk、Sumo Logic和Logstash分别对应这三种不同的模式。
Splunk是日志管理工具行业一个比较大的玩家,它专攻企业市场,并以on-premises模式运作。Splunk拥有最多功能和强大的整合能力,但价格也最高。为了迎合目前ITOA领域的发展趋势,Splunk也提供了SaaS版本,并且为SMB准备的更轻量级的版本。不过本文将只分析Splunk的on-premises业务所提供的服务。
Sumo Logic最初试图成为Splunk的SaaS版本替代,不过他们走出了自己独有的发展道路。到现在,它们已经是市场上功能最丰富的SaaS版日志管理工具之一,并且它们也专攻企业市场。
Logstash是一款开源的工具,经常作为ELK技术栈的其中之一使用,另外是ElasticSearch和Kibana。在ELK技术栈里,Logstash承担的是日志处理,它创建一个集中化的管道来储存、搜索和分析日志文件。它使用内建的过滤器和输入输出,以及一些插件来给日志管理提供强大的功能。
安装:由于on-premises、SaaS、开源模式的不同,三者的安装也各不相同,使用Splunk和Logstash你需要提供硬件和网络等基础设施,另外使用Logstash你通常还需要安装ELK里面的另外两个。
功能:Splunk的功能可能是市面上最丰富的,你几乎可以从它的UI或API调出你所需要的任何数据——前提是你的日志包含这些数据。并且它拥有高可用性、可扩展性,以及很重视安全性,另外它还能处理很多类型的机器数据。Sumo Logic则是功能最丰富的日志管理SaaS软件之一,它拥有很多和Splunk类似的功能,另外还有一项特性是设置时间的触发提醒。Logstash则由于其开源特性,拥有最强的自定义能力,你能使用自定义的日志格式或者定制自定义插件。
使用界面:Logstash并不包含UI,其前端部分由ELK中的Kibana完成,你也可以使用Graphite、Librato和DataDog来代替Kibana。Splunk提供一个内容丰富且灵活的界面,可通过XML或拖拽来定制。Sumo Logic的界面则专注于显示实时数据。
集成与插件:选择工具时一个重要的点是看它是否与你现有的工作流集成良好,对于日志管理工具的度量指标,则需要考虑它是否能处理你已有的日志以及能否与你的环境同步。Splunk有超过600个可用的插件,为它处理日志提供了强力的支撑。Sumo Logic是为特定的大型工具设计,包括开发自动化工具、云平台、系统平台,以及安全工具。Sumo Logic覆盖了主流的工具,但对于较小的或比较少见的工具则无能为力。Logstash作为开源工具,它的插件一直在增长,目前它已有超过160个插件,大部分来自社区。
价格:Splunk的价格为每年1800到60000美元,Sumo Logic提供一个精简的免费版,以及60美元/G的收费版本。Logstash则为开源免费,不过你仍然需要自己承担服务器和带宽费用。
文档和社区:对于工具的选择,文档的丰富程度以及社区的活跃程度也是重要的考量指标。Splunk拥有非常丰富的文档,以及以在线论坛形式组织的社区。Logstash的文档也不错,不过有些地方存在前后不一致。Sumo Logic的文档则不够丰富,社区也比较令人困惑。
日志管理工具并不仅仅只有上面这三个,还有很多其它的工具也都很不错,但这三者基本覆盖了日志管理工具的三种模式:on-premises、SaaS和开源,也正由于三种模式的不同,三者的适用场景也不同,用户需要根据自己的条件进行选择。关于更多的日志管理工具比较,Takipi在它的电子书《The Definitive Guide for Production Tools》中有更详细的描述。