监控工具_redis监控工具 - CSDN
  • 详解十三款运维监控工具  纵观我们部署在基础设施当中并始终保持运作的全部测量机制,监控系统无疑是重要性最高的机制之一,但它却常常遭到我们的忽视。如果能够建立起一套坚实的监控系统来针对可能发生的灾难加以...

    详解十三款运维监控工具

     纵观我们部署在基础设施当中并始终保持运作的全部测量机制,监控系统无疑是重要性最高的机制之一,但它却常常遭到我们的忽视。如果能够建立起一套坚实的监控系统来针对可能发生的灾难加以警示,我们就有机会迅速启动灾难响应方案或者着手排除复杂的性能故障,这对于任何规模的企业而言都极具巨大的实际价值。

    有效的运行监测体系,最终离不开相关技术平台的支撑,而我们需要了解监测技术平台

     


    一、开源工具介绍

    Zabbix

    官方网站:https://www.zabbix.com/

    推荐星级:★★★★★ 
    Zabbix是一个基于WEB界面的提供分布式系统监控以及网络监控功能的企业级开源运维平台,也是目前国内互联网用户中使用最广的监控软件,云智慧遇到的85%以上用户在使用Zabbix做监控解决方案。 
    image_1bnnj3st61rh010opr21rfu6qq9.png-100.1kB

     入门容易、上手简单、功能强大并且开源免费是云智慧对Zabbix的最直观评价。Zabbix易于管理和配置,能生成比较漂亮的数据图,其自动发 现功能大大减轻日常管理的工作量,丰富的数据采集方式和API接口可以让用户灵活进行数据采集,而分布式系统架构可以支持监控更多的设备。理论上,通过 Zabbix提供的插件式架构,可以满足企业的任何需求。

    可以直接查看我们zabbix相关板块:https://www.abcdocker.com/abcdocker/category/zabbix/

    用户群:90%以上中小型的泛互联网企业

    优点:

    1. 支持多平台的企业级分布式开源监控软件
    2. 安装部署简单,多种数据采集插件灵活集成
    3. 功能强大,可实现复杂多条件告警,
    4. 自带画图功能,得到的数据可以绘成图形
    5. 提供多种API接口,支持调用脚本
    6. 出现问题时可自动远程执行命令(需对agent设置执行权限)
    

    缺点:

    1. 项目批量修改不方便
    2. 入门容易,能实现基础的监控,但是深层次需求需要非常熟悉Zabbix并进行大量的二次定制开发,难度较大;
    3. 系统级别报警设置相对比较多,如果不筛选的话报警邮件会很多;并且自定义的项目报警需要自己设置,过程比较繁琐(但是网上的模板比较,也可以使用模板导入的方法);
    4. 缺少数据汇总功能,如无法查看一组服务器平均值,需进行二次开发;
    5. 数据报表需要特殊二次开发定义;
    

    Nagios

    官方网站:https://www.nagios.org/

    推荐星级:★★★★☆

    Nagios是一款开源的企业级监控系统,能够实现对系统CPU、磁盘、网络等方面参数的基本系统监控,以及 SMTP,POP3,HTTP,NNTP等各种基本的服务类型。另外通过安装插件和编写监控脚本,用户可以实现应用监控,并针对大量的监控主机和多个对象 部署层次化监控架构。

    ![image_1bnnjd8s59gg1pr71q97nmplr3m.png-129.1kB][2]

    Nagios最大的特点是其强大的管理中心,尽管其功能是监控服务和主机的,但Nagios自身并不包括这部分功能代码,所有的监控、告警功能都是由相关插件完成的。

    用户群:适合复杂IT环境的企业

    优点:

    1. 出错的服务器、应用和设备会自动重启,自动日志滚动
    2. 配置灵活,可以自定义shell脚本,通过分布式监控模式
    3. 支持以冗余方式进行主机监控,报警设置多样
    4. 命令重新加载配置文件无需打扰Nagios的运行
    

    缺点:

    1. 事件控制台功能很弱,插件易用性差
    2. 对性能、流量等指标的处理不给力
    3. 看不到历史数据,只能看到报警事件,很难追查故障原因
    4. 配置复杂,初学者投入的时间、精力和成本比较大
    

    Ganglia

    官方网站:http://ganglia.info/

    推荐星级:★★★★☆

    Ganglia是加州大学伯克利分校发起的一个开源集群监控项目,设计之初是用于监控数以千计的网络节点。Ganglia是一个跨平台可扩展的,高性能计算系统下的分布式监控系统。它已被广泛移植到各种操作系统和处理器架构上。

    ![image_1bnnji6etu471k52m9he72ld513.png-726.2kB][3]

    用户群:适用于大型服务器集群用户。

    优点:

    1. 适合监控系统性能,通过曲线很容易见到每个节点的工作状态
    2. 可以自定义监控项,监控展示有表格和图像两种,支持手机版
    3. 部署方便,通过不同的分层管理上万台机器,无需逐个添加配置
    

    缺点:

    1. 没有内置的消息通知系统
    2. 没有报警机制,出现问题不能够及时报警
    

    Grafana

    推荐星级:★★☆☆☆ 
    官方网站:http://grafana.org/

    23.png-313.5kB

    Grafana可以用在任何需要数据可视化的地方,如果有一天老板需要你做一份漂亮的业务数据图表,你无需头疼用什么绘图库去开发,你要做的仅仅是将业务数据稍作加工存入Grafana支持的DataSource,点几下鼠标即可配制出一份完美的数据图表。

    因为这款工具只可以绘图,我们可以通过influxdb监控,Prometheus采集的主机信息!

    Zenoss

    推荐星级:★★★★☆

    Zenoss Core是Zenoss的开源版本,其商用版本为ZenossEnterprise。作为企业级智能监控软件,Zenoss Core允许IT管理员依靠单一的WEB控制台来监控网络架构的状态和健康度。Zenoss Core的强大能力来自于深入的列表与配置管理数据库,以发现和管理公司IT环境的各类资产。Zenoss同时提供与CMDB关联的事件和错误管理系统, 以协助提高各类事件和提醒的管理效率。

    image_1bnnkhtp5cmi1721fin1fiu1lvn1l.png-376.9kB

    优点:

    1. Zenoss比较出色的地方在于它的Dashboard,可以配置很多portlet
    2. 每个用户的界面都是分开管理的,自定义dashboard不会影响其他用户
    3. 强大监控功能支持服务器、路由交换、防火墙、存储、数据库、中间件监控
    4. 采用基于HBASE的opentsdb存储任意时间段的数据
    5. 将状态监控,性能监控,资源管理,良好的报告机制进行有机的整合
    

    缺点:

    1. 对资源要求较高,即使只管理少数几台设备,也需要消耗大量硬件及内存等附加资源。
    2. 针对windows系统,开源版只提供SNMP,通过WMI检测CPU,Disk,软硬件和性能只在收费版提供。
    

    Open-falcon

    推荐星级:★★★☆☆

    Open-falcon是小米运维团队从互联网公司的需求出发,根据多年的运维经验,结合SRE、SA、DEVS的使用经验和反馈,开发的一套面向互联网的企业级开源监控产品。 
    image_1bnnkjnbrekohjh108r1rnqtat22.png-116.6kB

    Open-falcon架构

    用户群:目前有几十家企业用户不同程度使用。

    优点:

    1. 自动发现,支持falcon-agent、snmp、支持用户主动push、用户自定义插件支持
    2. 支持每个周期上亿次的数据采集、告警判定、历史数据存储和查询
    3. 高效的portal、支持策略模板、模板继承和覆盖、多种告警方式、支持callback调用
    4. 单机支撑200万metric的上报、归档、存储
    5. 采用rrdtool的数据归档策略,秒级返回上百个metric一年的历史数据
    6. 多维度的数据展示,用户自定义Screen
    7. 通过各种插件目前支持Linux、Windows、Mysql、Redis、Memache、RabbitMQ和交换机监控。
    

    缺点:由于发布时间较短,很多基础的服务监控插件(如Tomcat、apache等)还不支持,很多功能还在不断完善中,另外由于缺少专门的支持,虽然有开放社区,但是解决问题的效率相对较低。

    Cacti

    推荐星级:★★★☆☆

    官方网站:http://www.cacti.net

    提示: 近几年cacti和nagios已经基本被zabbix代替

    image_1bnnl957g1pg4l5a72ker217il2s.png-266.5kB

    Cacti 在英文中的意思是仙人掌的意思,Cacti是一套基于PHP、MySQL、SNMP及RRDTool开发的网络流量监测图形分析工具。它通过snmpget来获取数据,使用 RRDtool绘画图形,它的界面非常漂亮,能让你根本无需明白rrdtool的参数能轻易的绘出漂亮的图形。而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结 构、host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,让你添加自己的snmp_query和script!功能非常强大完善,界面友好。可以说,Cacti将rrdtool的所有“缺点”都补足了!下图是Cacti运行的主界面, 
       
       
    Cacti 工作流程 
    image_1bnnkstn61a171vvp11te9pf6vk2f.png-49.4kB

    步骤一,snmp协议收集远程服务器的数据 
    步骤二,将snmp收集的数据内容保存到rrd数据库中 
    步骤三,若用户查看某台设备上的流量或其它状态信息 步骤四,在mysql数据库中查找该设备对应的rra数据库文件的名称 
    步骤五,通过rrdtool命令进行绘图即可

    提示:cacti的图确实不好找,只能官网截一个 
       
       
    还有很多不出门的监控工具,这里就不在介绍了。


    天兔开源监控(只适用于mysql、redis、oracle)

    推荐星级:★★☆☆☆

    官方网站:http://www.lepus.cc/ 
       
    简洁、直观、强大的开源数据库监控系统,MySQL/Oracle/MongoDB/Redis一站式性能监控,让数据库监控更简单 
    image_1bnnlna5252q10617k7are1hd939.png-97.2kB
       
    优点: 中文开源软件,里面监控mysql和redis可以精确到sql语句 
    缺点: 因为只有监控数据库和非关系数据库,监控项不能统一,不能结合其他监控平台


    二、商用运维监控系统篇

    监控宝

    推荐星级:★★★★★   
    官方网站:http://www.jiankongbao.com

    监控宝是云智慧为用户提供IT性能监控(IT Performance Monitoring)的SaaS产品,包含网站监控、服务器监控、中间件监控、数据库监控、应用监控、API监控和页面性能监控等功能。包含免费版、畅 享版和企业版,目前用户约40万,监控宝app也是国内唯一提供移动监控服务的产品。 
       
    我个人网站也在使用

    image_1bnnm32vlohjatb183tth716n83m.png-86.8kB
     免费的监控有限,但是报警确实不错

    image_1bnnm490c1uvrg8k1cvb18n01d1d43.png-89.7kB

    报警也是相当快的,有短信有邮件 
    24.png-62.5kB

    优点:

    作为国内最早提供基于SaaS服务的网络监控平台,监控宝不但为初级用户提供免费的标准服务,企业用户还可以按需购买所需的监控、告警资源,最大限度的节省企业运维成本;

    监控宝通过遍布全球的300多个分布式监测节点,对网络进行稳定性和可用性的主动监控和实时分析,支持http(https)、ftp、ping、udp、tcp、smtp、traceroute等多种协议,测量CDN效果及DNS状态,全网全地域性能趋势分析。

    优点太多了,反正花钱的就是好的 
     

    缺点:除了花钱,没有不好的地方


    听云

    推荐星级:★★★★★ 
    官方网站:http://www.tingyun.com

    听云是帮助客户实时监控定位从崩溃报错、慢交互到网络环境出错等多维度复杂的性能问题。听云致力于用户视角的IT管理创新服务,为不同行业提供最终用户端到端的完整应用链的性能管理解决方案,帮助客户不断优化系统性能及用户体验,提高用户满意度和企业竞争力。 
    image_1bnnn3qo814ht1qhsoab2f1gsn80.png-186.9kB

    image_1bnnn4pckp211u7i11ftit01aga8d.png-160.6kB

    360网站服务监控

    推荐星级:★★☆☆☆

    360网站服务监控是一款面向广大站长的网站监控产品,提供免费的网站、服务器监控。  
    http://jk.cloud.360.cn/ 
       
    image_1bnnmcep81uab9emiprnu113c5s.png-150.2kB

       
    用户群:个人站长

    优点: 
    服务免费,支持网站HTTP监控、PING监控、域名DNS监控和服务器监控 
    提供网站访问全景数据和简单配置信息

    缺点: 
    只支持简单的网站和服务器监控,历史数据保留15天,且免费监控点数量仅为四个 
    最后一次产品更新是2014年9月,目前已停止更新和运营支持 
    价格也不是很便宜 
    image_1bnnmd2ni18slian1g6g4vrr7669.png-67.4kB
       
       
     


    阿里云监控

    官方网站:https://aliyun.com 
    推荐星级:★★★★☆

    阿里云监控是一款免费网站监控产品,可监控站点和服务器,并提供多种告警方式:短信,旺旺,邮件。

    image_1bnnmkb5cnn215k216341v2v1mpb6m.png-150.8kB

    用户群:阿里云用户

    优点:

    与阿里云服务捆绑紧密,允许用户自定义数据监控
    阿里云多IDC间内网数据传输,不占用客户公网资源
    支持对业务数据的通用统计,从各个角度反应服务的运行情况
    

    缺点:

    所有服务基于阿里云,功能单一,扩展性差
    功能不够强大,只能满足基础监控需求
    

    百度云观测

    推荐星级:★★☆☆☆ 
    官方网站:http://ce.baidu.com/

    百度云观测是百度推出的一款云服务产品,类似于360云监控、阿里云监控,主要是为站长提供免费的一站式网站监测、预警服务,功能覆盖网站运行状况、安全和访问速度等多个方面。

    image_1bnnms2a947an3nie91gud12mf73.png-309.7kB

    用户群:个人站长

    优点: 
    对于用户每日访问的站点进行安全检测 
    国内各大城市云节点覆盖,支持CDN、DNS状态和主机监控

    缺点:

    需要进行网站认证 
    监控点少,功能简单,只能监测网站状态,不支持服务器、应用监控。

    展开全文
  • 国内最流行且免费的11个服务器监控工具,拿走不谢! 作者: 水淼 日期: 2017-03-28 09:00:43 人气: 3...

    国内最流行且免费的11个服务器监控工具,拿走不谢!

    作者: 水淼 日期: 2017-03-28 09:00:43 人气: 3648 标签: 监控 服务 以及 工具
                    <div class="content"><div class="sm">
    

    科技速递:

      服务器监控工具功能相当强大,无论何时何地,我们都可以了解到服务器的功能以及性能。服务器监控工具的使用,可以让我们清楚的知道用户可以打开我们的网站,且确保网速不慢。只有这样做,才能留住宝贵的用户,以免因为系统停运的原因,导致用户丢失。基于此,W3Cschool小师妹为大家收集了11款超实用的服务器监控工具,快来拿走吧!

      1.Anturis

      国内最流行且免费的11个服务器监控工具,拿走不谢!

      大家都知道,Anturis是SaaS平台,它基于云计算,主要功能是对IT基础设置、网站以及服务器进行监控。Anturis的监控解决方案列表相当全面,功能相当不错。

      2.Performance Co-Pilot

      国内最流行且免费的11个服务器监控工具,拿走不谢!

      PCP是Performance Co-Pilot的简称,它属于系统性能以及分析框架。为了帮助大家对不正常的一些表达模式进行识别,Performance Co-Pilot从几个主机来整理数据且进行实时分析。

      3.SeaLion

      国内最流行且免费的11个服务器监控工具,拿走不谢!

      SeaLion是Linux服务器的监控工具,也基于云计算。只需要利用一个面板,就可以对全部服务器进行监控,且技术的诊断出现的问题。SeaLion拥有一个功能,那就是及时提醒。只要出现问题,非常及时就可以收到提醒。

      4.Munin

      国内最流行且免费的11个服务器监控工具,拿走不谢!

      Munin主要功能是有效分析服务器资源优势,属于网络及系统监控的工具。Munin拥有默认安装方式,这个安装方式也提供给大家很多报告。

      5.Icinga

      国内最流行且免费的11个服务器监控工具,拿走不谢!

      Icinga这个服务器的监控工具,免费且开源。它的主要功能是记录下服务器出现的具体问题,且及时的把这些问题反馈给你。

      6.Monit

      国内最流行且免费的11个服务器监控工具,拿走不谢!

      Monit这个开源工具,主要功能是监控以及管理UNIX系统,可以自动的修理以及维修,也可以对IP以及TCP进行协议检查以及网络检查。

      7.Simple Server Monitor

      国内最流行且免费的11个服务器监控工具,拿走不谢!

      Simple Server Monitor这款服务器的监控工具,使用起来相当方便,功能也很强大,成本也相当划算。Simple Server Monitor可以有效的监控WEB应用程序以及服务器运行情况。

      8.Nagios

      国内最流行且免费的11个服务器监控工具,拿走不谢!

      Nagios是一个开源的服务器,功能也很强大。它的监控以及报警机制主要服务于应用程序、交换机、服务器等。

      9.Pingdom

      国内最流行且免费的11个服务器监控工具,拿走不谢!

      Pingdom可以对互联网上很多地方的服务器以及网站进行监控,以保证他们可以有效的运行。通过Pingdom,可以对电子邮件的服务器、FTP服务器、受密码所保护的那些网站进行监控。

      10.interSeptor Pro

      国内最流行且免费的11个服务器监控工具,拿走不谢!

      interSeptor Pro算是相当高级的一款以太网数据中心以及机架监控的系统,主要功能是监控机架以及机房环境。interSeptor Pro还要警报,主要有空调系统故障或者危及到业务连续性的一些状况,它就会用警报来告诉大家。

      11.AppFirst

      国内最流行且免费的11个服务器监控工具,拿走不谢!

      AppFirst适用范围相当广,它适用于所有语言所编写的应用程序。自从AppFirst出现后,不需要亲自告诉那些用户,到底哪里又出现问题。

      选用这些服务器监控工具相当的明智,因为不仅可以为大家带来短期效益,也可以带来长期效益。W3Cschool小师妹为大家收集的11款服务器监控工具,希望大家喜欢。

      国内最流行且免费的11个服务器监控工具,拿走不谢!

      学编程技术,就到W3Cschool,如果你喜欢我们的文章,可以点击右上角关注我们;如果你想看到更多IT界的资讯,可以加我们的公众号。

      公众号:w3cschoolcn

    本文为头条号作者发布,不代表今日头条立场。

    网友评论:

    你为啥那么牛逼 :zabbix被小便吃了

    粪起 :zabbix路过

    it老炮儿 :都是国外的,大部分是Icinga+graphite+grafana,还有Nagios,有几个单机的没用。咋看还以为国内套牌产品。监控平台市场,国内能做成功的都是要花钱的,还免费,开玩笑,即使免费也是免费几个无用的模块。

    平凡大叔 :zabbix怎么会没有?

    老幫瓜 :ELK呢

    大明遺孤 :你确认是国内的???

    带砺山河 :没zabbix ?

    白日神游 :不写zabbix还有脸提监控?

    DangDang的小窝 :果然都提到zabbix了。

    头条新闻总裁 :什诡

    文章来源:http://www.toutiao.com/group/6366111095354704129/

                                        <div class="turn">
                        <ul>
                            <li>上一篇:<a href="/sLxhQxh/">你还在用第三方软件?别傻了!其实系统自带的杀毒软件更胜一筹</a></li>
                            <li>下一篇:<a href="/dPHQdv/">阿里惨遭“十八罗汉”抛弃?继马云之后,老二蔡崇信狂抛股份!</a></li>
                        </ul>
                    </div>
                                    </div>
    
    展开全文
  • What are some of the most useful monitoring tools for Java developers? Monitoring is an essential function in production environments today. Errors and performance issues pop up all the time – not ...


       7 Java Monitoring Tools

    What are some of the most useful monitoring tools for Java developers?

    Monitoring is an essential function in production environments today. Errors and performance issues pop up all the time – not just during business hours – so good monitoring tools need to be active 24/7. There are a lot of tools out there that tackle this issue from different angles, so getting a sense of which ones to consider can be tough.

    Today, I’m taking a look at 7 monitoring tools that are on the newer side or are worth considering as an alternative or addition to tools like New Relic and AppDynamics. The tools comprise a mix of open source and SaaS models, and each of them has their own specialty or lean, be it metrics, visualizations, or error tracking.

    译者信息

       7 Java Monitoring Tools

    Java 开发者最有用的监控工具有哪些呢?

    监测是当今生产环境中很重要的一个功能。错误和性能问题任何时间都会出现 —— 不仅仅在业务时间内 —— 所以好的监控工具需要 7 天 24 小时。目前有许多从不同角度解决这个问题的工具,所以弄清楚去采用哪个不是那么简单。

    今天,我带来了 7 个监测工具以及它们的新一面,它们都是值得考虑作为像 New Relic 或 AppDynamics 的替代或补充。这些工具包括混合开源和 SaaS 模式,它们每个人都有其在度量、可视化或跟踪错误方面的专长或缺憾。

    SaaS Tools

    1. Datadog

    Datadog is SaaS monitoring tool targeted for DevOps teams that takes data from your app and a wide range of other tools and provides insights and visualizations. It unifies data produced from your infrastructure and software into one location, allowing you to build dashboards or search across the data you feed it. They are currently built around aggregating and presenting data rather than performing analytics of their own.

    One benefit of Datadog is that they offer full access to their API, which opens up the flexibility to develop your own metrics or integrations.

    Datadog dashboard

    Example Datadog dashboards

    Downsides: Datadog doesn’t provide much in the way of their own analytics today, which can be something you may be looking for in a monitoring tool. They also require you to weave them into your code, which creates dependencies.

    译者信息

    SaaS工具

    1. Datadog

    Datadog 是 SaaS 监测工具,针对 DevOps 团队,从你的 app 或者其他各种工具获取数据并提供数据可视化功能。它把从你基础设备和软件采集的数据统一处理并存储。允许你创建仪表盘和搜索访问你提供的数据。他们目前提供数据的聚合和展示而不是提供数据分析。

    Datadog 的一个优点是了开放所有 API,可以让你很灵活的开发自己的指标或整合。

    Datadog dashboard

    Datadog 仪表盘示例

    缺点: Datadog 尚未提供太多数据统计功能,做为一个监控软件,这些功能可能恰恰是你正在寻找的。他们还需要植入你的代码,这会产生代码依赖。


    Cost: They have a free version, as well as a Standard version with a sliding scale of $15/host/month. The scale is based on number of hosts.

    The Java Angle: Officially, the Datadog API supports Python, Ruby, and C#. However, thanks to their open API access, the Datadog community has written several libraries for Java, including ones for StatsD and Codahale metrics.

    Takeaway: With their alerting capabilities and performance monitoring, Datadog can be used as a cheaper APM alternative. Their range of integrations helps plug them into your environment without much trouble. Datadog is a solid tool for gathering and visualizing metrics, but they aren’t an analytics tool, so look elsewhere if you want those functionalities.

    译者信息

    费用:它有免费版本和15美元/台/月的标准版本,标准版费用可上下浮动,浮动的多少要看主机的数量。

    java支持方面:官方文档中说明,Datadog API 支持 Python,Ruby 和 C#。不过,由于它的 API 访问是开放的,因此 Datalog 社团编写了几个 Java 方面的库,其中包括对 StatsD 和 Codahale 测量支持的库。

    其他:由于 Datadog 具有告警功能,而且可监控性能,因此它可作为一个价格相对便宜的应用程序性能监控器(APM)。有许多集成方案可以让你毫不费力地把它集成到你的运行环境中。Datadog 是一个强大的采集并可视化测量结果的工具,而不是分析工具,因此如果你需要的是分析工具,那就要另寻它物了。

    2. Ruxit

    Developed by Dynatrace, Ruxit is an application performance monitoring tool that operates in a SaaS model. It was developed to provide a different APM experience through SaaS and to work in high scale environments. It installs as a single agent and doesn’t require you to configure your environment for it, which provides an ease of setup advantage over similar tools like New Relic. They monitor user activity, application performance, servers, and network activity.

    Ruxit

    Ruxit dashboards

    Downsides: Ruxit doesn’t provide as much feature depth as other APM tools in the space.

    Cost: Ruxit costs $0.15/host/hour for application monitoring and $0.15 per 1,000 visits for Real User Monitoring.

    The Java Angle: Ruxit works with any Java server and Java versions 1.5+. Java was one of their first languages, so it has some of the better support.

    Takeaway: Ruxit is a SaaS APM tool that is easy to setup and integrate into your environment. The tool provides a good range of breadth into your environment, providing views into several different areas.

    译者信息

    2. Ruxit

    它由 Dynatrace 开发,Ruxit 是一个应用性能监控工具,它作用于 SaaS 模型。它通过 SaaS 提供不同的 APM 体验,并工作在高扩展性环境中。它作为一个代理安装,不需要你配置环境,它还提供了一个类似于 New Relic 的易于安装的工具。他们监控用户的活动,应用性能,服务器和网络活动。

    Ruxit

    Ruxit面板

    缺点: Ruxit 没有在空间上提供很多深度功能给其他的 APM 工具。

    消耗: Ruxit 监控应用会消耗 $0.15/主机/小时,并且对真实的用户监控(Real User Monitoring)来说每 1000 个访问者就花费 $0.15。

    The Java Angle: Ruxit 可以工作在任何 Java 1.5 版本以上的 Java 服务器上。Java 是他们首选语言,因此能获得更好的支持。

    Takeaway: Ruxit 是一个 SaaS APM 工具,并且它易于安装也易于集成到你的环境中去。工具为你的环境提供一个良好的范围广度,并提供几个不同区域的视图。


    3. Takipi

    Takipi tells you when and why your code breaks in production. It detects all types of errors and gives you the code and variable state when they happened. Takipi runs as a Java agent, and has no reliance on log files, which enables it to maintain <3% CPU and IO overhead. On the installation side, it does not require code changes, binary dependencies, or build configurations. With integrations like JIRA and Slack, Takipi is simple to slide into your existing workflow.

    Takipi

    An error analysis view in Takipi

    Downsides: It’s a JVM-level tool exclusively, so non-JVM languages are not supported. Today, it does not have APIs to integrate with other alerting tools.

    Cost: Free tier, sliding scale pro tier of $69/server/month, and enterprise tier. Tiers are based on data retention, error analyses numbers, and deployment options.

    The Java Angle: Takipi is a JVM-level tool. It works for any JVM-based language without requiring workarounds.

    Takeaway: Unlike other tools which stop at the stack trace level, Takipi gets down to the JVM level to bring you the actual code and variable state you need to solve each error. With Takipi, you can tell if a new deployment broke something in your code, get insight into all the errors happening in your application, and zoom in on critical issues.

    译者信息

    3. Takipi

    Takipi 告知你生产环境下的代码在什么时候、因什么原因而终止执行。它对所有错误进行检测,同时会给出出现错误时代码的位置和变量的状态。Takipi 是以 Java 代理的身份运行的,与任何日志文件无关,这样就会减少小于 %3 的 CPU 和 IO 运行花费。安装 Takipi 的时候,也不需要进行代码更改,不需要安装二进制依赖包或者进行构建配置的设置。就像集成 JIRA 和 Slack 那样,Takipi 可以非常简单地插入到工作流程中。Takipi

    Takipi 的错误分析界面

    缺点:它是一个只可用在 JVM 层上的工具,因此 JVM 不支持的语言它也不支持。目前,它也没有可以与其他告警工具集成在一起的 API。

    费用:免费级;专业级,其费用可上下浮动,69美元/服务器/月;企业级。级别的划分是根据保存的数据量,分析的错误数和部署选项而确定的。

    Java支持方面:Takipi 是运行在 JVM 层上的工具。任何不需要其它环境就可以运行在 JVM 上的语言,它都支持。

    其他:与其他停留在栈追踪层级的工具不同,Takipi 深入到 JVM 层级上,可以按照你的要求向你展示实际运行的代码和变量的状态,以达到对每个错误的解析。通过 Takipi,你可以确定是否是新部署终止了正在运行的代码, 通过深入地分析应用出现的所有错误,聚焦出问题的关键所在。

    4. Rollbar

    Rollbar focuses on error tracking and monitoring. They use stack tracing to capture errors in your application. The upside of this is that it can work with a wide range of languages and environments. Rollbar offers the ability to go in and report exceptions and events manually as well. Beyond tracking uncaught exceptions, they also provide some alerting and analysis capabilities.

    Rollbar

    Rollbar Dashboard

    Downsides: Rollbar can only capture uncaught exceptions. If you want to capture caught exceptions or anything else, you have to do so by hand. By relying on top-level uncaught exception handlers, it can miss exceptions that are swallowed up by your framework to prevent thread death.

    Cost: Free version, $29/month, $99/month and $249/month versions based on number of events tracked and length of data retention.

    The Java Angle: Rollbar does not have official libraries for Java, but their community has written a few that can send your logs to Rollbar.

    Takeaway: Rollbar is a stack trace-based error tracking application that can play well with most languages. The tradeoff for that is that they can only capture uncaught exceptions and events you manually send them.

    译者信息

    4. Rollbar

    Rollbar 着眼于错误追踪与监控。它使用堆栈追踪来捕捉应用中出现的错误。这样做的好处是可以支持更多的语言和环境。Rollbar 也提供手工方式深入异常、事件内部,并提供报告的能力。除提供强大的异常捕获能力外,还提供了一些警报和分析能力。

    Rollbar

    Rollbar 仪表板

    劣势: Rollbar 仅能捕获“程序未捕捉异常”。如果你打算捕获程序捕捉异常或其他,只好手工来做。由于依赖顶层程序未捕捉异常处理器,它能忽略由框架产生的异常,避免线程死锁。

    成本: 免费版本, $29/每月, $99/月 and $249/月,区别在与追踪到的事件数量及数据保留长度.

    Java支持: Rollbar 没有提供 Java 的官方支持库,但社区提供了一些实现,可以讲你的日志发给 Rollbar.

    概述: Rollbar 是基于堆栈的错误追踪应用,它能兼容大多数开发语言。但负面影响是它仅能捕获程序未捕捉异常及手动发送的事件。

    Open Source

    5. Sensu

    Sensu is an open source monitoring framework for application and system services. It can collect and ship metrics to a variety of tools and provide alerts for defined events. Written in Ruby, Sensu uses a “checks and handlers” setup, wherein periodic check scripts are run to look for pre-defined conditions, which are then reported to handlers if present. Handlers are used to send notifications or take other actions.

    Sensu alerts

    Alerts in Sensu

    Downsides: Sensu isn’t as broadly reaching as true APM tools like Ruxit. It’s focus is on server monitoring. On the installation front, Sensu has dependencies on RabbitMQ and Redis, as well as several other dependencies wrapped in their required repositories. There are some concerns around scaling capabilities and maintenance complications, but your mileage may vary.

    Cost: Sensu Core (their open source project) is free, but they also offer Sensu Enterprise, which adds additional integrations, support, and features. Sensu Enterprise costs $2/server/month, with volume discounts at high scale.

    The Java Angle: Sensu check and handler scripts can be written in any language, and the Sensu community has written some plugins for Java.

    Takeaway: Sensu is an open source framework alternative for cloud and server monitoring. There are some questions around high scale and complexity, but it’s a strong tool for metrics gathering and service monitoring.

    译者信息

    开放源代码(的监控工具)

    5. Sensu

    Sensu 是一个面向应用和系统服务的开源监控框架。它能收集和使用多种工具的度量值,并提供已定义事件报警。Sensu,使用 Ruby 实现,采用“检查和处理器”设定,周期性运行检查脚本,查找预定义条件,如果条件满足,则向处理器报告。处理器用于发送通告或采取其他处置方法。

    Sensu alerts

    Sensu中的警报

    劣势: 不像 Ruxit,Sensu 并没有真正的实现 APM 工具。它着重于服务器监控。在安装前端, Sensu 依赖 RabbitMQ 和 Redis,及其他依赖,这些依赖包可以在指定的软件仓库中找到。还有一些对于可扩展能力和维护复杂性的担忧。当然,你的需求可能不同。

    成本: Sensu Core 核心版(其中的开源项目)免费, 但也提供企业版本,企业版提供附加的集成、支持和特性。企业版费用标准: $2/每服务器/每月, 大规模部署享受折扣.

    Java视角: Sensu 的检查和处理器脚本能用任何开发语言编写, Sensu 社区提供了Java支持插件

    概述: Sensu 是云和服务器监控的一个开源替代框架实现,在搞扩展性和复杂性上还存在一些问题,但它仍然不失为一个度量参数值收集和服务监控的强力工具。

    6. ELK stack

    The ELK Stack isn’t exactly new, but we’d be remiss to make this list and leave it off. Made up of ElasticSearch, Logstash, and Kibana, the ELK stack is a popular set of open source tools for monitoring, logging, and visualizing your data. Elasticsearch handles the search and analytics, Logstash is the log aggregator, and Kibana does the fancy dashboard visualizations. We’ve been using it at Takipi for a while, feeding it from Java through our logs and Redis, and it’s in use both by developers and for BI. Today, Elasticsearch is pretty much built-in with Logstash, and Kibana is an Elastic product as well, making integration and setup very simple. You can mix and match the three tools if you’d like as well.

    When a new deployment rolls out, the dashboards follow custom indicators that you can set up about your app’s health. These indicators update in real time, allowing close monitoring when freshly delivered code takes its first steps after being uploaded to production.

    The ELK stack

    An ELK Stack view

    译者信息

    6. ELK stack

    ELK Stack,严格来讲,不是一个新产品,但我们常常忽略掉它,不放到我们的讨论列表中。  ELK stack 是一个流行的工具套件,功能涵盖监控、日志和数据可视化。它由 ElasticSearch, Logstash, and Kibana 三部分组成。其中,Elasticsearch 负责搜索和分析,Logstash 是日志聚积器,而 Kibana则提供华丽的可视化仪表盘。我们已经在 Takipi中 使用 ELK Stack一段时间,使用 java 通过日志和Redis 提供输入。这既适用于开发者,同样可用于 BI。今天, Elasticsearch 完美内置了 Logstash,  Kibana 也是灵活的独立工具。它们集成和设置都很简单。你可以按照你的需要灵活搭配这三个工具使用。当实施(推出)新的部署时,仪表盘会遵照你设定的应用健康参数阀值指示器工作。这些指示器会实时更新,同样允许你在上传产品补丁代码时,暂时关闭监控。

    The ELK stack

    ELK Stack 视图


    Downsides: The ELK Stack faces the standard downsides for open source tools (namely that setup costs and deployment issues are yours to shoulder). At higher scale, the number of machines needed to run ELK Stack starts to multiply aggressively, which creates a need to upkeep and monitor them yourself. One possible solution is using hosted services like Logz.io to help manage this pressure.

    Cost: As open source tools, the ELK Stack doesn’t have a price barrier, although there are professional support and services available from Elastic.

    The Java Angle: The ELK Stack is designed for Java. In fact, a Java runtime is required to run ElasticSearch and Logstash. Elastic recommend having at least Java 7, and all ElasticSearch nodes should run on the same JVM version.

    Takeaway: ELK stack, the name for ElasticSearch, Logstash, and Kibana, is a set of open source tools that delivers search & analytics, logging, and visualization capabilities. The tools are built to integrate well together, so using the full set is simple (although not required).

    译者信息

    劣势ELK Stack 有着开源工具所通用的缺点(即你需要自己承担工具的安装成本和部署问题)。在大规模数据情况下,需要运行 ELK Stack 的机器数量成倍增长,这就需要你自己来监控和维护这些额外的机器。一种可行的方案是使用托管服务,例如 Logz.io 来减轻这种监控的压力。

    成本: 作为开源工具,ELK Stack 没有任何价格负担,但它也可以提供来自 Elastic 专业的服务支持。

    Java视角: ELK Stack 转为 Java 设计。事实上,ElasticSearch 和 Logstash 运行在 Java 环境。Elastic 要求的 Java 版本最低为 Java7,且所有的 ElasticSearch 节点的 JVM 版本必须相同。

    其他: ELK Stack,包括 ElasticSearch Logstash, 和 Kibana,是一整套提供搜索分析日志并带有可视化功能的开源工具。这一套工具整合地非常好,所以使用起来也很简单(虽然它并不是必须的)。


    7. Graphite

    Graphite is a visualization tool for monitoring metrics in your application. Made up of three components (Carbon, Whisper, and Graphite-web), its open source nature makes it easy to customize and tinker with. We wrote about building your own Graphite architecturehere.

    Graphite has a powerful querying API and a fairly feature-rich setup. It doesn’t capture its own metrics, but the Graphite metric protocol is often chosen the de facto format for many metrics gatherers, so feeding it data is rarely a problem. Using Graphite enables you to create an extensive range of views into your application.

    graphite

    The default Graphite dashboard GUI

    译者信息

    7. Graphite

    Graphite 是应用程序监控度量值的可视化工具,包括三个组件 (Carbon, Whisper, 和Graphite-web),它的开源特性使得它能被方便定制和改进. 如何构建你自己的 Graphite 构架,可以参看我们的文章 here

    Graphite 提供了强大的查询访问API和特性丰富的设置。它并不需要设置自身的度量,而是提供Graphite metric protocol ,被多种度量采集器选择的事实协议格式。因此,输入给它的数据完全不是问题。使用 Graphite 能使你为你的应用创建各种视图。

    graphite

    默认的Graphite仪表盘GUI

    Downsides: Graphite faces the standard downsides for open source tools (namely that setup costs and deployment issues are yours to shoulder). Additionally, Graphite can run into problems at higher scale thanks to design decisions it made for its Carbon and Whisper components. This one is a matter of preference, but many people aren’t too enthused with the default GUI either.

    Cost: Downloading Graphite is free, but you’ll need to factor in the hardware and associated costs to run it. Many of the alternative pieces to Graphite, such as Grafana and InfluxDB are also free. If you want to use Graphite without having to deploy it yourself, there are hosted options as well for a subscription fee.

    The Java Angle: Graphite is language agnostic, and there are many tools that can collect metrics from Java applications and send them to Graphite.

    Takeaway: Graphite is a popular open source tool for visualizing and querying metrics you gather from your application. It has the standard open source downsides as well as some limitations around scaling, but both of those can be overcome in various ways if you’re willing to either pay or customize.

    译者信息

    缺点: Graphite 面临开源工具的共同困境(也就是,安装的开销以及部署的问题)。另外,Graphite 在大规模的情况下会遇到问题,这些问题是由 Carbon 和 Whisper 组件的设计决策而来。这是一个偏好问题,但是人们对默认的 GUI 也没有太大的热情。

    开销: 下载 Graphite 是免费的,但是你需要将硬件的因素以及运维的开销考虑在内。 相对于 Graphite 而言,也有许多替代品,如 Grafana 和 InfluxDB 也是免费的。如果你想使用 Graphite,而不希望自己部署,也可以通过付费的方式进行托管。

    Java视角: Graphite 是语言无关的,有许多工具可以从 Java 应用程序收集指标,并将它们发送给 Graphite。

    纪要: Graphite 是一个受欢迎的开源软件工具,它以可视化的方式展示从应用程序收集的指标。它有开源软件共同的缺点,以及规模化的限制。不过,如果你愿意付费或者定制,这两方面的缺点都可以通过许多不同的方式来克服。

    Conclusion

    Monitoring tools are an essential inclusion in production environments today. Visualizing metrics, tracking errors, monitoring performance, and analyzing your application are all key activities for gaining insight into the workings of your application. Recognizing the need is easy, but choosing which monitoring tool or set of tools to use can be difficult.

    The seven tools I wrote about here – Datadog, Ruxit, Takipi, Rollbar, Sensu, ELK Stack, and Graphite – are worthwhile tools to check out. They’re all either on the newer side or provide a valuable alternative to some of the larger tools out there. Part of choosing which tool to deploy is knowing where to start your search. The tools here make for a good starting point.

    译者信息

    结论

    如今,监控工具是生产环境的重要组成部分。测量结果的可视化、错误追踪、性能监控和应用分析是对应用的运行状况进行深入观测的基本手段。认识到这一需求非常容易,但要选择哪一款监控工具或者哪一组监控工具却异常困难。

    上面我提到的7个工具:Datalog,Ruxit,Takipi,Rollbar,Sensu,ELK Stack 和 Graphite 都是值得考虑的。这些工具要么是最近才创建的,要么是这篇文章中未提到的一些大型监控工具的替代工具。选择部署哪款监控工具要明确在哪儿才能搜索这些工具。这儿所提到的工具就是一个很好的开始。


    展开全文
  • 推荐7个超棒的监控工具 发布时间: 2017-3-31 10:25:55  Java 开发者最有用的监控工具有哪些呢?  监测是当今生产环境中很重要的一个功能。错误和性能问题任何时间都会出现 —— 不仅仅...

    推荐7个超棒的监控工具




    发布时间: 2017-3-31 10:25:55  

      Java 开发者最有用的监控工具有哪些呢?


      监测是当今生产环境中很重要的一个功能。错误和性能问题任何时间都会出现 —— 不仅仅在业务时间内 —— 所以好的监控工具需要 7 天 24 小时。目前有许多从不同角度解决这个问题的工具,所以弄清楚去采用哪个不是那么简单。


      今天,我带来了 7 个监测工具以及它们的新一面,它们都是值得考虑作为像 New Relic 或 AppDynamics 的替代或补充。这些工具包括混合开源和 SaaS 模式,它们每个人都有其在度量、可视化或跟踪错误方面的专长或缺憾。


      SaaS工具


      1. Datadog


      Datadog 是 SaaS 监测工具,针对 DevOps 团队,从你的 app 或者其他各种工具获取数据并提供数据可视化功能。它把从你基础设备和软件采集的数据统一处理并存储。允许你创建仪表盘和搜索访问你提供的数据。他们目前提供数据的聚合和展示而不是提供数据分析。


      Datadog 的一个优点是了开放所有 API,可以让你很灵活的开发自己的指标或整合。



      Datadog 仪表盘示例


      缺点: Datadog 尚未提供太多数据统计功能,做为一个监控软件,这些功能可能恰恰是你正在寻找的。他们还需要植入你的代码,这会产生代码依赖。


      费用:它有免费版本和15美元/台/月的标准版本,标准版费用可上下浮动,浮动的多少要看主机的数量。


      java支持方面:官方文档中说明,Datadog API 支持 Python,Ruby 和 C#。不过,由于它的 API 访问是开放的,因此 Datalog 社团编写了几个 Java 方面的库,其中包括对 StatsD 和 Codahale 测量支持的库。


      其他:由于 Datadog 具有告警功能,而且可监控性能,因此它可作为一个价格相对便宜的应用程序性能监控器(APM)。有许多集成方案可以让你毫不费力地把它集成到你的运行环境中。Datadog 是一个强大的采集并可视化测量结果的工具,而不是分析工具,因此如果你需要的是分析工具,那就要另寻它物了。


      2. Ruxit


      它由 Dynatrace 开发,Ruxit 是一个应用性能监控工具,它作用于 SaaS 模型。它通过 SaaS 提供不同的 APM 体验,并工作在高扩展性环境中。它作为一个代理安装,不需要你配置环境,它还提供了一个类似于 New Relic 的易于安装的工具。他们监控用户的活动,应用性能,服务器和网络活动。



      Ruxit面板


      缺点: Ruxit 没有在空间上提供很多深度功能给其他的 APM 工具。


      消耗: Ruxit 监控应用会消耗 $0.15/主机/小时,并且对真实的用户监控(Real User Monitoring)来说每 1000 个访问者就花费 $0.15。


      The Java Angle: Ruxit 可以工作在任何 Java 1.5 版本以上的 Java 服务器上。Java 是他们首选语言,因此能获得更好的支持。


      Takeaway: Ruxit 是一个 SaaS APM 工具,并且它易于安装也易于集成到你的环境中去。工具为你的环境提供一个良好的范围广度,并提供几个不同区域的视图。


      3. Takipi


      Takipi 告知你生产环境下的代码在什么时候、因什么原因而终止执行。它对所有错误进行检测,同时会给出出现错误时代码的位置和变量的状态。Takipi 是以 Java 代理的身份运行的,与任何日志文件无关,这样就会减少小于 %3 的 CPU 和 IO 运行花费。安装 Takipi 的时候,也不需要进行代码更改,不需要安装二进制依赖包或者进行构建配置的设置。就像集成 JIRA 和 Slack 那样,Takipi 可以非常简单地插入到工作流程中。



      Takipi 的错误分析界面


      缺点:它是一个只可用在 JVM 层上的工具,因此 JVM 不支持的语言它也不支持。目前,它也没有可以与其他告警工具集成在一起的 API。


      费用:免费级;专业级,其费用可上下浮动,69美元/服务器/月;企业级。级别的划分是根据保存的数据量,分析的错误数和部署选项而确定的。


      Java支持方面:Takipi 是运行在 JVM 层上的工具。任何不需要其它环境就可以运行在 JVM 上的语言,它都支持。


      其他:与其他停留在栈追踪层级的工具不同,Takipi 深入到 JVM 层级上,可以按照你的要求向你展示实际运行的代码和变量的状态,以达到对每个错误的解析。通过 Takipi,你可以确定是否是新部署终止了正在运行的代码, 通过深入地分析应用出现的所有错误,聚焦出问题的关键所在。


      4. Rollbar


      Rollbar 着眼于错误追踪与监控。它使用堆栈追踪来捕捉应用中出现的错误。这样做的好处是可以支持更多的语言和环境。Rollbar 也提供手工方式深入异常、事件内部,并提供报告的能力。除提供强大的异常捕获能力外,还提供了一些警报和分析能力。


      Rollbar 仪表板


      劣势: Rollbar 仅能捕获“程序未捕捉异常”。如果你打算捕获程序捕捉异常或其他,只好手工来做。由于依赖顶层程序未捕捉异常处理器,它能忽略由框架产生的异常,避免线程死锁。


      成本: 免费版本, $29/每月, $99/月 and $249/月,区别在与追踪到的事件数量及数据保留长度.


      Java支持: Rollbar 没有提供 Java 的官方支持库,但社区提供了一些实现,可以讲你的日志发给 Rollbar.


      概述: Rollbar 是基于堆栈的错误追踪应用,它能兼容大多数开发语言。但负面影响是它仅能捕获程序未捕捉异常及手动发送的事件。


      开放源代码(的监控工具)


      5. Sensu


      Sensu 是一个面向应用和系统服务的开源监控框架。它能收集和使用多种工具的度量值,并提供已定义事件报警。Sensu,使用 Ruby 实现,采用“检查和处理器”设定,周期性运行检查脚本,查找预定义条件,如果条件满足,则向处理器报告。处理器用于发送通告或采取其他处置方法。



      Sensu中的警报


      劣势: 不像 Ruxit,Sensu 并没有真正的实现 APM 工具。它着重于服务器监控。在安装前端, Sensu 依赖 RabbitMQ 和 Redis,及其他依赖,这些依赖包可以在指定的软件仓库中找到。还有一些对于可扩展能力和维护复杂性的担忧。当然,你的需求可能不同。


      成本: Sensu Core 核心版(其中的开源项目)免费, 但也提供企业版本,企业版提供附加的集成、支持和特性。企业版费用标准: $2/每服务器/每月, 大规模部署享受折扣。


      Java视角: Sensu 的检查和处理器脚本能用任何开发语言编写, Sensu 社区提供了Java支持插件。


      概述: Sensu 是云和服务器监控的一个开源替代框架实现,在搞扩展性和复杂性上还存在一些问题,但它仍然不失为一个度量参数值收集和服务监控的强力工具。


      6. ELK stack


      ELK Stack,严格来讲,不是一个新产品,但我们常常忽略掉它,不放到我们的讨论列表中。 ELK stack 是一个流行的工具套件,功能涵盖监控、日志和数据可视化。它由 ElasticSearch, Logstash, and Kibana 三部分组成。其中,Elasticsearch 负责搜索和分析,Logstash 是日志聚积器,而 Kibana则提供华丽的可视化仪表盘。我们已经在 Takipi中 使用 ELK Stack一段时间,使用 java 通过日志和Redis 提供输入。这既适用于开发者,同样可用于 BI。今天, Elasticsearch 完美内置了 Logstash, Kibana 也是灵活的独立工具。它们集成和设置都很简单。你可以按照你的需要灵活搭配这三个工具使用。当实施(推出)新的部署时,仪表盘会遵照你设定的应用健康参数阀值指示器工作。这些指示器会实时更新,同样允许你在上传产品补丁代码时,暂时关闭监控。



      ELK Stack 视图


      劣势:ELK Stack 有着开源工具所通用的缺点(即你需要自己承担工具的安装成本和部署问题)。在大规模数据情况下,需要运行 ELK Stack 的机器数量成倍增长,这就需要你自己来监控和维护这些额外的机器。一种可行的方案是使用托管服务,例如 Logz.io 来减轻这种监控的压力。


      成本: 作为开源工具,ELK Stack 没有任何价格负担,但它也可以提供来自 Elastic 专业的服务支持。


      Java视角: ELK Stack 转为 Java 设计。事实上,ElasticSearch 和 Logstash 运行在 Java 环境。Elastic 要求的 Java 版本最低为 Java7,且所有的 ElasticSearch 节点的 JVM 版本必须相同。


      其他: ELK Stack,包括 ElasticSearch Logstash, 和 Kibana,是一整套提供搜索分析日志并带有可视化功能的开源工具。这一套工具整合地非常好,所以使用起来也很简单(虽然它并不是必须的)。


      7. Graphite


      Graphite 是应用程序监控度量值的可视化工具,包括三个组件 (Carbon, Whisper, 和Graphite-web),它的开源特性使得它能被方便定制和改进. 如何构建你自己的 Graphite 构架,可以参看我们的文章here。


      Graphite 提供了强大的查询访问API和特性丰富的设置。它并不需要设置自身的度量,而是提供Graphite metric protocol ,被多种度量采集器选择的事实协议格式。因此,输入给它的数据完全不是问题。使用 Graphite 能使你为你的应用创建各种视图。



      默认的Graphite仪表盘GUI


      缺点: Graphite 面临开源工具的共同困境(也就是,安装的开销以及部署的问题)。另外,Graphite 在大规模的情况下会遇到问题,这些问题是由 Carbon 和 Whisper 组件的设计决策而来。这是一个偏好问题,但是人们对默认的 GUI 也没有太大的热情。


      开销: 下载 Graphite 是免费的,但是你需要将硬件的因素以及运维的开销考虑在内。 相对于 Graphite 而言,也有许多替代品,如 Grafana 和 InFluxDB 也是免费的。如果你想使用 Graphite,而不希望自己部署,也可以通过付费的方式进行托管。


      Java视角: Graphite 是语言无关的,有许多工具可以从 Java 应用程序收集指标,并将它们发送给 Graphite。


      纪要: Graphite 是一个受欢迎的开源软件工具,它以可视化的方式展示从应用程序收集的指标。它有开源软件共同的缺点,以及规模化的限制。不过,如果你愿意付费或者定制,这两方面的缺点都可以通过许多不同的方式来克服。


      结论


      如今,监控工具是生产环境的重要组成部分。测量结果的可视化、错误追踪、性能监控和应用分析是对应用的运行状况进行深入观测的基本手段。认识到这一需求非常容易,但要选择哪一款监控工具或者哪一组监控工具却异常困难。


      上面我提到的7个工具:Datalog,Ruxit,Takipi,Rollbar,Sensu,ELK Stack 和 Graphite 都是值得考虑的。这些工具要么是最近才创建的,要么是这篇文章中未提到的一些大型监控工具的替代工具。选择部署哪款监控工具要明确在哪儿才能搜索这些工具。这儿所提到的工具就是一个很好的开始。


      来源:oschina

    阅读:498次
    展开全文
  • 4个开源监控工具介绍

    2019-01-09 22:15:50
    围绕监控的术语近年来引起了很多混乱,导致一些糟糕的工具宣称能够以一种格式完成所有事情。可观测性的支持者认识到观察一个系统有许多层次。度量标准聚合中最主要的是时间序列数据,这里有许多工具可用,包括开源和...

    围绕监控的术语近年来引起了很多混乱,导致一些糟糕的工具宣称能够以一种格式完成所有事情。可观测性的支持者认识到观察一个系统有许多层次。度量标准聚合中最主要的是时间序列数据,这里有许多工具可用,包括开源和商业。我们将专注于开源工具,但其中有包含带有付费组件的开放核心模型。

    Prometheus

    这是原生云应用程序中最受认可的时间序列监控解决方案。目前它由Cloud Native Computing Foundation 基金会(CNCF)托管,但之前是由Matt Proud和Julius Volz创建,由SoundCloud赞助,很多早期的贡献者也提供了帮助。

    Prometheus是一个基于拉的系统,它使用本地配置来描述要收集的端点以及收集所需的间隔。每个端点都有一个客户端收集数据并在每次请求时更新该代理人(或者配置客户端)。收集此数据并将其保存在本地磁盘上的高效存储引擎中。存储系统每个度量标准使用仅附加文件。这种存储不是有损的,这意味着一年前数据的保真度与您今天收集的数据一样高。但是,您可能不希望在本地保留那么多数据。幸运的是,有一个远程存储选项可用于长期保留和分析。

    Prometheus包含一种高级表达式语言名为PromQL,用于选择和显示数据。数据可以通过REST API以图形方式,表格方式或由外部系统使用。表达式语言允许用户创建回归,分析实时数据或趋势历史数据。标签也是过滤和查询数据的绝佳工具。标签可以与每个度量标准名称相关联。

    Prometheus还提供联邦模式,通过允许团队拥有自己的Prometheis来鼓励更多的本地化控制,而中央团队也可以拥有自己的Prometheis。中央系统可以抓取与本地Prometheis相同的端点,但它们也可以获取本地Prometheis正在收集的聚合数据。这减少了端点上的开销。此联合模型还允许本地实例相互收集数据。

    Prometheus附带AlertManager来处理警报。该系统允许聚合警报以及更复杂的流量以限制发送警报的时间。

    假设在同一时间10个节点突然关闭。您可能不需要发送有关10个节点的警报,因为接收它们的每个人在修改交换机之前可能无法执行任何操作。使用AlertManager,可以仅向交换机的网络团队发送警报,并包含有关可能受影响的其他系统的其他信息。也可以向系统团队发送电子邮件(而不是页面),以便他们知道这些节点已关闭。除非系统在交换机修复后没有出现,否则他们不需要响应。如果发生这种情况,则AlertManager将重新激活由交换机警报抑制的那些警报。

    Graphite

    Graphite已经存在很长时间了,James Turnbull出版的“监测艺术”一书详细介绍了Graphite。Graphite已经在该行业中普遍存在,许多大公司大规模使用它。

    Graphite是一个基于推送的系统,通过让应用程序将数据推送到Graphite的Carbon组件中,从应用程序接收数据。Carbon将此数据存储在Whisper数据库中,Graphite Web组件读取该数据库和Carbon,允许用户在浏览器中绘制数据图或通过API提取数据。一个非常酷的功能是能够将这些图形导出为图像或数据文件,以便将它们轻松嵌入到其他应用程序中。

    Whisper是一个固定大小的数据库,可以随时间快速,可靠地存储数字数据。它是一个有损数据库,这意味着您的指标的解决方案会随着时间的推移而降低。它将为最新的集合提供高保真度量标准,并逐渐降低保真度。

    Graphite还使用点分隔命名,这意味着维度。此维度允许对指标和指标之间的关系进行一些创造性聚合。这样就可以跨不同版本或数据中心聚合服务,并且(更具体地说)在特定Kubernetes集群中的一个数据中心中运行的单个版本。还可以进行粒度级比较以确定特定群集是否表现不佳。

    Graphite的另一个有趣功能是能够存储应该与时间序列指标相关的任意事件。特别是,可以在Graphite中添加和跟踪应用程序或基础架构部署。这允许操作员或开发人员对问题进行故障排除,以获得有关正在调查的异常行为的环境中发生的事情的更多上下文。

    Graphite还有大量可应用于度量的函数。但是,它缺乏强大的查询语言,它还缺少警报功能或内置警报系统。

    InfluxDB

    InfluxDB是一个相对较新的参赛者,比Prometheus更新。它使用开放核心模型,这意味着有额外的扩展和集群成本。InfluxDB是更大的TICK堆栈(Telegraf,InfluxDB,Chronograf和Kapacitor)的一部分,因此我们将在此分析中包含所有这些组件的功能。

    InfluxDB使用名为tags的键值对为度量添加维度,类似于Prometheus和Graphite。结果类似于我们之前讨论的其他系统。度量标准数据可以是float64,int64,bool和具有纳秒分辨率的字符串。这个范围比这个领域的大多数其他工具更广泛。事实上,TICK堆栈更像是一个事件聚合平台而不是本机时间序列指标聚合系统。

    InfluxDB使用类似于日志结构合并树的系统进行存储。在此上下文中,它被称为时间结构合并树。它使用预写日志和一组只读数据文件,这些文件类似于排序字符串表,具有系列数据而不是纯日志数据。这些文件按时间块进行分片。要了解更多信息,请在InfluxData网站上查看这个优秀的资源

    TICK堆栈的体系结构根据它是开源还是商业版本而有所不同。开源InfluxDB系统是独立于一个主机中的,而商业版本质上是分布式的。其他中心组件也是如此。在开源版本中,一切都在一台主机上运行。外部系统上没有存储任何数据或配置,因此管理起来相当容易,但它不如商业版那么强大。

    InfluxDB包含一种类似SQL的语言,名为InfluxQL,用于查询数据库中的数据。查询数据的主要方法是HTTP API。查询语言没有像Prometheus那样多的内置辅助函数,但熟悉SQL的人可能会对这种语言感觉更舒服。

    TICK堆栈还包括警报系统。该系统可以进行一些温和的聚合,但不具备Prometheus的AlertManager的全部功能。但它确实提供了许多集成。此外,为了减少InfluxDB的负载,可以安排连续查询来存储Kapacitor将采取警报的查询结果。

    OpenTSDB

    正如其名称所暗示的,OpenTSDB是一个开源时间序列数据库。它在这个工具集中是独一无二的,因为它将其指标存储在Hadoop中。这意味着它具有固有的可扩展性。如果您已经拥有Hadoop集群,那么对于您希望长期存储的指标,这可能是一个不错的选择。如果您没有Hadoop集群,那么运营开销可能会给您带来太大的负担。但是,OpenTSDB现在支持Google的Bigtable作为后端,这是一种您无需操作的云服务。

    OpenTSDB与其他系统共享许多功能。它使用键值配对系统,它调用标签来识别指标和添加维度。它有一种查询语言,但它比Prometheus的PromQL有限。但是,它有几个内置功能,有助于学习和使用。API是查询的主要入口点,类似于InfluxDB。除非在HBase中设置了生存时间,该系统还可以永久存储所有数据,因此您不必担心保真度降低。

    OpenTSDB不提供警报功能,这将使您很难与事件响应流程集成。这种类型的系统可能对于长期Prometheus数据存储和执行更多历史分析以揭示系统性问题非常有用,而不是作为快速识别和响应急性问题的工具。

    展开全文
  • 1、大众点评 Cat 监控平台 CAT(Central Application Tracking)是基于Java开发的实时应用监控平台,为大众点评网提供了全面的监控服务和决策支持。 CAT作为大众点评网基础监控组件,它已经在中间件框架(MVC框架,...
  • 监控系统是整个 IT 架构...多年来,对于监控的术语一直都有很多困惑,一些很糟糕的工具也宣称能够以一种格式完成所有事情。 在 DevOps 和云原生时代,今年,“可观察性”(Observability)被引入到了 IT 领域,其首...
  • 监控作为重要性最高的机制之一,在一定程度上也遭到了我们的忽视。 无处不在的灾难,如果有监控系统的预警,...在接下来的两节课里面,我们会说到开源工具介绍和商用运维监控系统这两块。 下面我就来来详细说说开...
  • 由于你的网络可能包含来自各种制造商的设备,因此不希望将其绑定到局域网监控工具的专有系统中。请务必检查你购买的监控系统是否与你已有的所有网络设备兼容。局域网监控工具评估商业局域网的大小范...
  • 在开发上位机下位机通讯程序时,有一个好的监控工具会事半功倍。特在网上找了几款串口监控软件,作了简单对比: 一、Device Monitoring Studio 网址:http://www.hhdsoftware.com 程序截屏: 软件功能比较强大...
  • JVM 图形化监控工具

    2016-11-09 10:54:04
    前篇文章已经介绍了一些JDK 中自带的监控工具,但是这些工具都是基于文本界面的,无法很直观的看出程序运行的波动情况,这节就介绍一些图形化的监控工具供大家更简单容易的监控使用。  首先说几个官方开发的图形...
  • 随着互联网行业的不断发展,各种监控工具多得不可胜数。这里列出网上最全的监控工具。让你可以拥有超过80种方式来管理你的机器。在本文中,我们主要包括以下方面:命令行工具网络相关内容系统相关的监控工具日志监控...
  • oracle实时监控工具

    2018-07-07 09:55:50
    oracle实时监控工具市面上不多,但是兼具数据维护管理及性能实时监控的工具可以说更少,而实时监控又是项目运维管理,测试,开发但环节不可少的功能,目前有一款JAVA开发的,基于WEB的:TreeSoft数据库管理系统可以...
  • 如果你正在寻找性能监控工具,不妨看看以下推荐的这五款开源工具,这些工具目前已经可以替代付费工具了,你可以看看是否是你的最佳选择。本文推荐的五款开源工具目前是开源社区中最受欢迎的。  1. Stagemonitor ...
  • mysql实时监控工具

    2018-07-07 09:45:29
    mysql实时监控工具市面上有许多了,但是兼具数据维护管理及性能实时监控的工具不多,可以说很少,而实时监控又是项目运维管理,测试,开发但环节不可少的功能,目前有一款JAVA开发的,基于WEB的:TreeSoft数据库管理...
  • Kafka三款监控工具比较(转) 在之前的博客中,介绍了Kafka Web Console这 个监控工具,在生产环境中使用,运行一段时间后,发现该工具会和Kafka生产者、消费者、ZooKeeper建立大量连接,从而导致网络阻塞。并且这个 ...
  • 在这篇文章中我们将罗列一系列使用最频繁的性能监控工具,并对介绍到的每一个工具提供了相应的简介链接,大致将其划分为两类,基于命令行的和提供图形化接口的。   一段时间以来,我们在网上向读者介绍了如何...
  • 如果你正在寻找性能监控工具,不妨看看以下推荐的这六款开源工具,这些工具目前已经可以替代付费工具了,你可以看看是否是你的最佳选择。本文推荐的六款开源工具目前是开源社区中最受欢迎的,在https://github.com上...
  • 随着互联网行业的不断发展,各种监控工具多得不可胜数。这里列出网上最全的监控工具。让你可以拥有超过80种方式来管理你的机器。在本文中,我们主要包括以下方面:命令行工具网络相关内容系统相关的监控工具日志监控...
  • 作为现在web应用开发的黄金搭档,Redis正被广泛应用于存储session信息、权限信息、交易作业等热数据。...Redis的功能和性能非常出色,考虑篇幅问题,本文将会对Redis和常见的监控工具进行简单的介绍,后面有机会
1 2 3 4 5 ... 20
收藏数 378,796
精华内容 151,518
关键字:

监控工具