Honeycomb - 调试复杂系统的工具

Honeycomb 是用于观察和关联分布式系统中各事件的工具。它的方法与现有工具(例如Zipkin)不同。Honeycomb由原有的单一请求跟踪模型转变为更自由形式的模型,能够跨层(layers)、跨维度(dimensions)地收集和查询数据。

Honeycomb与Zipkin这样的软件有什么区别?Zipkin是基于Google Dapper paper的分布式跟踪系统,由Twitter编写和开放源代码。InfoQ近日与Honeycomb联合创始人Charity Majors联系,了解到该产品的更多信息。Majors指出,与使用全球唯一的UUID进行请求跟踪不同,“对大家来说通常更有用的是某种用户ID或应用程序ID,以及其他类型的ID。这些请求ID便于将具有您可能想要计算或聚合的共同特征进行分组。”

这在实践中意味着什么?基于如Zipkin之类的跟踪工具的请求,假设每个请求都附有唯一的ID。从请求进入系统的时间起,ID通过各种子系统调用(可用于微服务)来传递,而子系统调用是由初始调用的结果触发的。如果在每个步骤都记录下此ID,并且设定中心区域来聚合和索引这些日志,那么在请求ID已知的前提下,在系统中搜索和跟踪特定请求将变得很容易。这种日志聚合器的一个典型例子是ELK(Elasticsearch/Logstash/Kibana)。

Honeycomb打破了这种模式,尽量在每个级别分别获取数据(如负载均衡器、微服务和数据库),标记数据,便于用户今后对这些数据进行混合匹配(mix-an-match)和即时查询(ad-hoc queries)。Majors解释说,Honeycomb采用这种方法是因为跟踪本身给你留下一个亟待解决的问题。这个问题就是“哪些是有代表性,值得首先研究的请求”。一旦用Honeycomb展示数据,用户可以跨系统、跨时间,将不同层的数据联系整合,进行运算,从而理解它的性能。例如,跨越多个系统的请求响应时间的增加可能是由于来自多个因素(包括时间)的集体效应。这不利于请求跟踪,因为请求一般代表的是给定时间段内相关事件的单个线程。

数据一般可以通过API调用发送到Honeycomb。以下示例表示如何用API调用来记录Web请求数据:

curl https://api.honeycomb.io/1/events/Quickstart -X POST -H "X-Honeycomb-Team: YOUR_WRITE_KEY" -d '{"status":200,"path":"/docs/","latency_ms":13.1,"cached":false}'
在这个例子里, “-d”参数可用于获取JSON对象。这个JSON对象具有便于以后查询的任何应用程序特定信息。数据收集为一系列事件,对于其中每个事件都应该进行跟踪。这些事件可以捆绑成名为“数据集”的单个实体。Honeycomb可以通过所谓的“连接器”与应用程序集成。连接器是从特定软件中提取数据并将其发送到Honeycomb的适配器。用户还可以使用SDK以及名为honeytail的工具将数据从现有日志集成到Honeycomb。

为了:给正在收集的数据添加上下文,Honeycomb还标记各事件是由谁触发的:是操作员还是像计划任务cron之类的什么(部署、脚本或一次性动作)。这些操作垂直排列,上面附加了一些信息,例如谁运行脚本以及指向部署代码的链接。这有点类似于Etsy的运营团队使用Graphite的情况(但Graphite缺乏相应的背景信息)。

Honeycomb收集了大量数据,那它是如何处理大规模查询的呢?Majors说,由于接近100%用户发出的查询都是关于最近一两个星期的,他们现在正专注于近期的调试任务,以便于采用有效的抽样保留技巧。

为了处理大量的数据,Honeycomb使用自己的列存储:

Majors说,我们开始构建Honeycomb时研究了大量现有的解决方案,但没有一个能完美解决问题。我们最终发现,绝大多数的预构建解决方案都需要对功能性进行权衡,在那些我们不需要的功能(例如事务)和牺牲那些我们认为至关重要的功能(例如能够快速访问原始输入事件)之间取舍。

Honeycomb目前还不支持与其他告警系统集成,如Nagios、Zabbix、PagerDuty。目前只有受邀请者可以注册该服务。

本文转自d1net(转载)

时间: 2024-10-22 13:52:00

Honeycomb - 调试复杂系统的工具的相关文章

WinXP系统从命令提示符启动“系统还原”工具的方法

Windows XP 包括"系统还原"工具,以下方法可在 a 无法正常启动Windows XP系统的计算机 b 无法进入安全模式时 c 无法以常规方法运行此工具时 启动"系统还原"工具. 方法是: 计算机开机启动时按住F8键,出现启动菜单时选择带命令行提示的安全模式.(备注: 必须以管理员或具有管理权限的用户身份登录.) 回车后出现如下图:

金山毒霸如何使用系统修复工具

  金山毒霸的系统修复工具能够针对操作系统.IE等关键位置进行强力修复,还原到系统初始状态,消除病毒.木马及恶意软件的恶意篡改等行为带来的影响. 不仅可以快速查杀病毒木马,更可智能修复系统缺失和损坏的文件.强力修复各种系统异常情况. 在"安全百宝箱"主界面点击"系统修复"按钮,点击"立即处理"按钮进行修复.

Win8.1系统画图工具功能介绍

  在平常的工作和生活中,人们对各种图片进行的处理是非常的频繁的!比如说:别人发的QQ图片.自己的照片.网络上的各种美图等等,大家都会经常的处理它们,必须要使用到画图的工具.通常我们都是在网上下载画图工具,然后安装程序进行运行,这样的话就很麻烦.但是在Win8.1系统中就不用特意去下载了,因为它自带了画图工具,能够满足一般用户很多简单的需求.下面我们就来看下这款画图工具,具体有哪些功能吧! 一.图片的缩放 我们用画图工具打开一张图片,在画图工具界面中选择"查看",我们可以点击左上角&q

win7系统清理工具使用基础教程

  只要使用电脑一段时间后,总是不能避免产生系统垃圾文件的问题,垃圾文件都会增加系统运行的负担,必须及时清理干净,净化系统空间,从而系统的运行速度和电脑的稳定性都达到一个提升.今天教大家使用自带的win7系统清理工具 来清除系统垃圾文件. 1.鼠标点击开始--所有程序--附件--系统工具,选择磁盘清理.(win7系统修复)如图: 2.选择要清理的驱动器,然后点击确定按钮,如图: 3.系统会提示正在清理垃圾,如图: 4.在磁盘清理对话框中的磁盘清理选项卡上,勾选要删除的文件类型的复选框,然后单击确

分享一个LiteDB做的简单考试系统辅助工具

    凌晨,被安排在公司值班,因为台风"灿鸿"即将登陆,风力太大,办公楼,车间等重要部分需要关注.所以无聊,那就分享一下,今天给朋友临时做的一个小的考试系统辅助工具吧.其实非常小,需求也很简单,但是可以根据实际需要进行扩充,暂时只实现了一些核心功能.界面丑了点,无所谓,凑合着用吧. 1.考试系统辅助需求     上午10点一个朋友紧急求助,单位要进行在线测评,开卷考试,题库以及答案已经发给他们了,但是太多,好几百道题目,翻资料都来不及.问我能不能做一个软件,能够快速填充答案或者找到题

系统软件-一键u盘装系统 u盘启动盘装系统制作工具哪个比较好?

问题描述 一键u盘装系统 u盘启动盘装系统制作工具哪个比较好? 另外,U大侠装系统软件怎么样?u盘启动盘装系统制作工具哪个比较好? 解决方案 这些山寨的U盘工具基本上都暗插流氓软件和广告件.这些人的本事很大,甚至你用这种启动盘启动,它还会篡改你主机上的系统.想想也是,这种盗版侵权担着风险的事情,人家没有一点好处凭什么给你做. 实际上,你可以从微软官方网站上下载免费的windows adk(不是android开发包,而是Windows 评估和部署工具包)https://msdn.microsoft

米聊-android5.0或者米UI利用系统清理工具后台清理不死

问题描述 android5.0或者米UI利用系统清理工具后台清理不死 怎么让应用在android5.0或者米UI上利用系统清理工具后台清理不死 解决方案 用services,两个,彼此监听,一个被杀死,另外一个立刻启动.还有一个方法,不是特别好,就是services每秒钟启动自己一次,这样可以避免services被杀死. 解决方案二: 楼上正解,但是每秒启动自己一次的service未必有用,以后说不定硬件升级后清理内存可以在1000ms内完成 解决方案三: 这种一般都需要守护进程,当你的程序被杀

系统的工具类是要设计成为单列类还是将所有的方法设计为静态方法?

问题描述 如题,恳请指出为什么..... 解决方案 系统的工具类一般这样设置建立一个private的无参构造函数,这样做的目的,是为了防止生成工具类的实例,也就是不能new一个工具类了如果是工具类中要对外公开的,也就是外部使用的方法,就设置成 public static得,这样使用的时候就可以直接使用了一般不需要单例这样说明白了吗?

黑客要闻!知名系统清理工具CCleaner被黑,超过230万用户受影响

本文讲的是黑客要闻!知名系统清理工具CCleaner被黑,超过230万用户受影响, 据外媒报道,知名系统清理工具CCleaner被黑,已被攻击者用于传播恶意软件.如果你在今年的8月15日至9月12日期间下载或者更新过CCleaner,那么,很不幸的通知你,你的电脑已经被黑了. 这又是一个震惊安全界的新闻,CCleaner已经不再是助手,转而成为主攻手. 关于CCleaner CCleaner是一款免费的系统优化和隐私保护工具,主要用来清除Windows系统不再使用的垃圾文件,以腾出更多硬盘空间.