从日志数据创建实时仪表板

日期: 2014-05-25 作者:Leigh Merrigan翻译:Ranma 来源:TechTarget中国 英文

在引入了实时记录日志之后,我们为什么不能用一个单一的解决方案来监控整个堆栈呢?在我看来,这是可以的!最近我们在Logentries进行了一项有超过25000用户基础样本的调查,企业正在将日志应用到更为广泛的应用中去。但是,为什么要这样做呢,而且为什么要利用日志数据在你的系统中为不同的视图创建实时仪表板,这样做又有什么意义呢?

我之所以认为从日志数据创建仪表板并非易事原因如下:

在你的系统中,日志包含着有价值的数据。在你从应用程序添加任何日志事件之前,系统组件(操作系统,web服务器,应用程序服务器,数据库,负载均衡器,路由器,防火墙等)都会产生有关性能,响应时间,谁在访问你的系统及从哪里访问等一些包含有价值信息的日志数据。从软件应用添加属于自己的日志事件到这样一个大杂烩中可以让你掌握全局,其中有很多是免费的,你真的应该对其善加利用。

添加新的日志事件是很容易的,也就是说,如果你需要添加更多的数据,它们会扩容,而且添加并不需要集成复杂的库。只需要为你的日志添加一些结构化良好的日志事件,从而对你的系统有更多的了解,例如,添加一个新功能,然后在单一用户层级上添加一些日志事件来抓取它的使用情况。接着就是简单地对这些事件进行追踪以了解此新功能在发布之后是否,何时以及是如何被使用的。

日志可以从你的系统中剥离:使用日志作为数据,它带来了一些不错的简化,其中之一就是你的系统不必与APM工具或是web分析解决方案紧密耦合。而我所说的紧密耦合是什么意思呢?例如你正在使用某个APM工具,你通常需要将它的监控库或代理集成进你的系统,如此一来此APM工具就可以开始捕捉某些系统痕迹,性能指标以及资源使用情况的信息。这不仅会影响应用程序的性能,而且还意味着你的应用程序本质上是与此解决方案捆绑在一起的,除非你准备将之前说到的库从你的程序代码中移除。而日志的情况并非如此。你只需要简单的将事件记录到磁盘,或是系统日志,然后你就可以使用日志管理解决方案将重要数据进行提取并可视化。如果你不喜欢你的日志提供商,只需要将日志发送给其他服务或解决方案提供商,而不必将任何库或接口从你的程序源代码中移除。

无论添加什么样的数据,日志都可以将其可视化:有了日志数据,你所受到的限制就只是你的想象力。在Logentries内部,我们用日志做的一些事情包括跟踪用户注册和功能使用情况,识别违反性能阈值的情形,了解系统资源使用情况,通过像素追踪技术追踪营销活动,将每日总销售情况可视化等等。

日志可以从你堆栈的每个组件和设备生成:可以用日志给出你系统的一个完整端对端的视图,而且通常来说这些都可以通过你堆栈所有层中的每个组件来产生。最近我写了一篇博文,即当试图获得云组件可见性(否则就被视为黑盒)的时候,日志便有了其特别的用武之地。简言之,那篇博文讲的是云服务是如何产生日志数据从而让你可以用来获得那些云组件和服务的可见性,而对于这些服务你是不能使用传统的APM解决方案的。此外,你现在还可以从用户的web浏览器抓取日志,或是移动设备实时地从客户端设备给出你的应用程序真正的端对端可见性,经过你的中间件组件并一路到达数据库,如此一来你还可以通过复杂堆栈对事件进行追踪。

日志维护证据:最后,也是我所认为最重要的,就是基于日志数据的仪表板具有一个重要的属性,在用很多其他方法创建仪表板的时候此属性并不存在,即你的日志维护证据!这意味着如果出现一个注册数量的激增或是使用某项特别功能的一个用户增长,你可以很快地验证是什么造成了这一变化。而使用APM,web分析工具或是自产的指标仪表板来验证数据可以说是特别痛苦的。

当尝试用其他监控方法来验证指标的时候,过程通常如下所示:

  1. 你注意到某一项指标突然激增,例如注册数量从昨天开始增加了200%。
  2. 你明白天下没有免费的午餐,而且最近你并没有启动任何新的营销活动,你就会想要知道注册量是如何以这种方式增加的?
  3. 你询问了负责建立自产指标仪表板的开发人员,要求他检查并搞清楚这一变化的原因。
  4. 开发人员十分繁忙而且会在一至两天后才能回复,在检查了代码以及一至两个数据库后,他给出的解释是注册量的增长是因为某些垃圾信息散布者注册了大量账户。
  5. 你明白天下没有免费的午餐,但是这已经是两天以后了,等待这样一个答案耗费了如此长的时间还是让你略感沮丧。

如果你从日志创建了仪表板,以上流程就会像下面一样进行:

  1. 你注意到某一项指标突然激增,例如注册数量从昨天开始增加了200%
  2. 你明白天下没有免费的午餐,而且最近你并没有启动任何新的营销活动,你点击此激增以进一步探究日志数据(即证据)并查看当天注册的人员列表。很快你就发现了相同的电子邮件模式一再重复,这样你也就明白了一定是某些人在骚扰你。

鉴于以上描述,我非常高兴的宣布当你在使用Logentries的时候,我们新的实时可视化是开箱即用的。我们新的Log Insights可以提供一个实时仪表板,它对发生在你系统中的重要事件拥有高层次视图。它的一些好处包括:

  •  免于搜索:我们新的仪表板可以开箱即用并且不需要在你的数据上设置或是运行复杂的搜索查询。它会从你不同的系统给出一个重要事件和数据容量的即时视图。
  • 跟踪事件容量并识别重要事件的趋势:仪表板会从你的不同组件显示数据容量,以及这些事件随时间推移的分布,还有整个系统中你所标记的重要事件有着怎样的发展趋势。
  • 探究证据视图:仪表板是完全可点击的,因此你可以探究日志以验证数据中任何的激增或趋势。可以很容易地识别激增和趋势,这样你就可以很方便的钻研它们以更好地理解它们发生的根本原因。
  • 与你的团队共享信息:由于仪表板设计的初衷就是易用并且不需要建立复杂的搜索查询,所以便可以很方便地用它们在你企业的不同团队间共享系统相关信息,这些团队包括开发,测试,支持,产品等等。正如我上面说的,真正的限制只是你日志中捕获了什么样的数据。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

翻译

Ranma
Ranma

相关推荐