慧聪安防网

视频监控落地四要素:预测、检测、报警及定位

http://www.secu.hc360.com2017年05月22日16:31 来源:高效开发运维T|T

    慧聪安防网讯  背景介绍:该分享是阿里妈妈Goldeneye业务监控平台智能监控解决方案

    这个分享主要包括智能监控的技术实现,以及大规模日志监测数据的自动化接入两部分。我先介绍一下智能监控部分,下一期分享中我的两位同事将给大家着重介绍日志分析处理的计算存储。智能监控现在其他一些公司也有在做,希望通过这次分享能够给大家带来一些新的启发,也欢迎大家能够提出问题和建议,互相切磋交流经验。——马小鹏

    相关厂商内容

    分享内容的提纲如下:Goldeneye智能监控的业务背景、技术思想、技术实现细节、难点和今后的优化方向。

    嘉宾介绍

    马小鹏,阿里妈妈全景业务监控平台技术负责人。2013起在阿里从事大规模系统日志分析及应用的研发,曾经主导了直通车广告主报表平台和实时报表存储选型。在加入阿里之前,曾负责网易电商App数据统计平台的研发。

    一、Goldeneye智能监控的背景

    Goldeneye作为阿里妈妈业务监控平台,主要在业务日志、数据的实时统计分析基础上做监控报警以及辅助定位。阿里集团内部也有很多优秀的监控平台,它们在开放性上做的很好,接入成本也不高,但是监控阈值也是开放给用户自己设定。这种情况下,对于业务监控人工维护阈值就比较复杂,需要有丰富的经验来拍定阈值,需要人工持续的维护不同监控项的监控阈值。所以,在业务快速发展的前提下,传统的静态阈值监控很容易出现了误报、漏报的问题,而且人工维护成本高,监控视野局限。Goldeneye就是在这种基础上,我们试着从大数据应用的角度,去解决业务监控中的问题,由此诞生的。

    1.业务背景:

    (1)体量大:Goldeneye现在接入的业务线覆盖了阿里妈妈主体的90%业务,每天处理的日志量在100T以上,业务监控需要对各业务线的流量分层级实时监控,核心数据以1分钟为周期,一般监测数据以5分钟或1小时为周期,监控目标非常多,按人工维护这些监控的阈值、启停、生效实效等几乎是达不到的。

    (2)变化多:业务监控的监测数据大都是业务指标,不同于系统运维指标,比如RT/QPS/TPS等一般是比较稳定的,业务指标具有周期性变化的特点,比如工作日和节假日的区别、业务营销策略调整的影响等,在这种情况下人工设定的静态报警阈值准确性就很难保障了。

    (3)迭代快:随着阿里妈妈资源整合和业务的快速发展,监控目标也经常发生变化,比如流量监控资源位的调整、效果监控的产品类型划分等,曾经出现过新流量上线后的监控盲点。

    2.技术背景:

视频监控落地四要素:预测、检测、报警及定位

    通常的业务监控系统或平台,都是由采集、数据处理、检测、报警等模块组成的,Goldeneye也是如此,不过它的技术架构上用了阿里内部的一些技术中间件,比如采集我们使用TimeTunnel(它有agent在各台日志服务器上拉日志到Topic,并且负责将离线日志放到ODPS上),这部分我不再介绍了。

    数据处理我们使用的jstorm和ODPSMRjob分别对日志进行实时、离线批处理,主要包括日志解析、校验、时间周期归一化、聚合、写存储(HBase)等操作,这部分下一期分享中我的同事会详细介绍。今天的分享主要集中在阈值预测、监控检测、报警生成&通知、辅助定位这四部分。

    二、技术思想

    智能监控就是让系统在业务监控的某些环节上代替人工执行和判断的过程。人工维护监控目标和阈值是以经验为参考的,系统如何自动判断哪些目标需要监控、自动设定监控目标的阈值水位、不用人力维护,是基于对历史样本数据统计分析得出判断依据。

    通过收集监测数据的样本,并使用智能检测算法模型,让程序自动对监控项指标的基准值、阈值做预测,在检测判断异常报警时使用规则组合和均值漂移算法,能精确地判断需要报警的异常点和变点。

    1.阈值水位自适应变化

    以往我们添加监控有两种做法:

    给指标M1设置一个水位线,低于(或高于)水位,触发报警;

    给指标M1设置同比、环比波动幅度,比如同比波动20%、环比波动10%触发报警;

    以上两种方式,是平常大家常用的监控方式,但是效果确不理想,这种静态阈值长期来看没有适应变化的能力,需要人工维护,而且报警准确性也依赖于同环比数据的稳定性。

    我们能否让系统具备自动适应变化的能力,自动调整阈值水位?就如同手动挡的汽车换成自动挡一样,可以根据速度自己调节档位。

    2.监控项自动发现

    当我们的监控系统具备预测动态阈值的能力后,监控项的维护是否也可以交给系统去做?

    可能大家也曾遇到过类似的情况,旧的监控项已经没有数据了,新的监控目标却因为各种原因被漏掉,人工维护监控项需要及时同步上下线变更,但是当我们需要监控的目标有一千个、一万个甚至更多的时候,人力是无法一直跟进这些监控项的维护工作的,或者说这种工作比较单调容易被忽视。

    我们能否将判断如何筛选监控项的规则交给系统,让它去定期检查哪些监控项已经实效,哪些监控项需要新增,哪些监控项的阈值需要调节。这种发现规则是稳定的,仅仅是依据发现规则得出的监控项内容在不断变化而已。

    3.过滤误报时欲擒故纵

    当我们的监控系统具备预测动态阈值、自动发现并维护监控项的能力后,如何达到不漏报和不误报之间的平衡?

    对于监控而言,漏报是不可容忍的,但是误报过多也容易使人麻木。

    通常的做法是为了不被误报干扰至麻木,会把阈值调节得宽松些,但是这种做法容易产生漏报,尤其是下跌不太明显的情况。

责任编辑:瞿骊醒

上一页12345下一页
《慧聪安防网》服务升级
扫码关注

安防资讯官方微信

安防资讯官方微博