我们需要什么样的监控工具(一)
-
在开始这个系列之前,我们想明确两个不同的说法:监控工具和监控系统,国内在涉及监控时往往把这两个东西混在一起,统称为监控,从某个角度来说他们确实是一体的,但为了方便本文讨论,从专业的角度,我们需要对其做个明确的定义和区分,方便读者理解本系列文章和我们的产品。
在我们看来,监控工具是为了提供给客户使用而构建的满足自身业务需要的监控系统基石,即:
监控工具:监控服务厂商提供的监控能力组件的软件系统。监控工具本身也是一套软件系统,它可能是一个云服务(比如我们的数象智云)也可能是一个可以本地部署的或一系列命令或应用的集合。
监控系统:客户选用监控工具并根据自身业务需求构建的一套完整的、用于监控自己业务系统方方面面的软件系统。
由上可见,监控工具和监控系统都是软件系统,但他们的目的是不同的;监控工具是为了方便客户使用并能(且应该)进行自定义的基础工具,而监控系统则是客户拥有的满足自身业务需要的最终可用的软件系统,他们的区别和关系如下图所示:
下面我们就可以进入这个系列的正题了。
什么是监控?为什么要监控?对这两个问题,我想能读到这篇文章的读者心里都已经有了自己的答案(没事,你的答案是对的,因为这两个问题并没有标准答案),而且已经理解了监控的重要性。
那么在构建自己的监控系统时,应该选择什么样的监控工具或者说需要一个什么样的监控工具呢?这是一个很难回答的问题,也是这个系列想尝试帮助用户回答的的问题。
从我们开篇定义监控工具和监控系统概念时就可以看出,选择监控工具是为了构建自己的特殊的监控系统。我们碰到过的客户总是有各种各样的需求,需求的不同决定了他们在选择监控工具时就会有所不同;因此客户业务需求肯定是一个重要的选择因素。但作为监控服务提供商,我们却能从不同客户的选择中发现很多共性,而这些共性才是真正指导客户进行监控工具选择的更本质的原因。知道了这些共性,再结合自身业务需求,用户就能选择出更符合自己需求的监控工具了。
那么这些共性要求或特点是哪些呢?
第一个就是简单易用。这是一个纯粹站在用户角度的答案。做过监控系统的人都知道,监控系统是一个复杂的系统,它涉及方方面面的知识和整合,即使是大的企业在构建自己的监控系统时也只能构建一个满足自己业务需要的复杂系统,而无法真正达到简单易用(毕竟他们的主营业务不在监控上)。
什么叫做简单易用呢?这个涉及到几个层次:
-
容易理解的概念。概念是一个很重的沟通语言,但它往往容易被人忽视(一些从事监控的专业人员甚至不知道或无法理解自己的概念是什么)。概念的重要性在于,它能帮助客户在不了解技术细节的情况下也能轻松理解监控工具的能力和使用方式。好的容易理解的概念能让客户对自己选择的监控工具和系统更有信心(毕竟自己能明白自己选了个什么样的工具)。就好像购买手机一样,即便用户不理解4G,5G这些关键的概念,仍然可以知道自己手机能用多长时间,拍照片如何以及通话效果和质量怎么样等等。
-
便捷和快速的使用效果:有了基本概念后,客户往往需要实际体验下,此时好的监控系统基本可以做到一键式部署,即客户在提供基本信息后,只需要简单的操作如一次两次点击或执行一个或两个简单的命令即可看到效果。这个看似简单的要求其实很难做到,比如国外现在流行的监控方案如DataDog,AppDynamics,LogicMonitor等,做的相对而言好点的就只有LogicMonitor,它把大量的复杂度封装后让客户只需简单安装一个Agent即可开始使用,极大降低了非专业客户的学习曲线和使用成本(但LogicMonitor仍有很多不足之处,后面我们会谈到)。
-
自动智能:前面说道,监控系统涉及到很多东西,即便是对一个技术型公司,要对这些涉及的方方面面有所了解也很困难。此时监控系统如果能做到“自动智能”则会极大的提升用户的使用体验。当然大多数情况下,这种自动智能其实并不需要现在火热的AI,它更多的是专家知识和经验的集成(比如对网络监控,能把对网络理解的专家知识和经验给集成到工具或系统里面)。在这个方面,不得不说前面几家监控服务提供商中LogicMonitor是做的最好的。
简单易用只是一个好的监控工具应该具备的最基本的特性;它能给用户一个良好的第一印象和后面持续的良好使用体验。除此之外,一个好的监控工具需要具有其它一些特征,如灵活的配置管理、丰富的使用插件、完备的功能集成、场景覆盖能力等等,这些会是我们后续文章的主题,敬请期待。
-