智能监控,在日志产品运用中都经历了什么……
作者:大鹏
云日志团队
后端开发工程师
传统监控范围小
智能监控效率高
你说到底怎么用
大鹏给你来支招
传统监控是通过对监控项设置一个固定值(阈值),当监控项指标超过这个阈值时就通知人们关注这个指标项。传统监控一般适用于一定范围波动的业务指标:
比如磁盘的使用率,CPU的使用率等,当指标超过一定值时就意味着系统可能出现故障,但是遇到波动范围比较大的场景时;比如某银行的交易09:00~18:00之间交易量大,在其他时间交易量可能为0,工作日交易一般,非工作日交易剧增;比如某网站的点击量在白天很大,在深夜点击量可能为0,如果使用传统监控对上面的场景进行指标监控,往往不能很好的反映系统和业务的状态,产生很多误报的情况,增加人工成本,而且甚至会让人们对告警产生麻木,不信任感。
OMG,那咋办?!
所以我们加入了机器学习算法,对过去的监控指标进行训练,对当前值的异常判断不再仅仅取决于一个固定的阈值,而是同期数据,历史周期性数据进行了参考,通过动态阈值的方法对异常数据进行检测。
大鹏大讲堂
#认真记笔记#
技 术 架 构
模型训练器:云日志以固定频率采集的业务指标形成时间序列,输送到模型训练器中,模型训练器有一系列的数学模型组成(可动态添加),每个模型都得到预测值,观察值与预测值之前存在的误差,对比误差我们将得到一个与业务最匹配的数学模型。利用这个训练出的最佳模型,输入未来时间点,得到预测值,绘制未来业务图。
异常检测器:训练的数学模型预测的值与实际的观察值存在一定的误差,这个残差系列输送到异常检测器中,异常检测器也是由一系列的数学模型组成(可动态添加),模型检查的误差点与业务的异常点最匹配的模型将作为异常检测模型,将后续检测出的异常点发送给预警系统。
时间序列建模
采集的时间序列数据并非是散乱,毫无规律的一组数据,它往往伴随业务的变化而变化,有的具有很强的周期性规则,有的具有相对平滑的趋势,我们需要利用对应的数学模型来拟合,一下是我们常用的几种数学模型。
对不同特征的时间序列,不同的数学模型所计算出的误差也截然不同,我们从以下列表的指标来衡量这些数学模型的匹配度。
在经过以上指标衡量预测模型的优劣后,我得到最契合业务的拟合曲线,得到最佳的训练模型。然后输入未来时间点得到那个时间点的预测值,然后绘制出预测曲线。
异 常 检 测
在预测出未来时间点的数据后,如何检测这个业务数据是否异常,我们也有对应的异常检测模型,如下表所示:
将残差指标用以上模型计算之后,与过去的业务异常点进行对比,选择最接近的异常检测模型,作为后续的异常检测,当模型检测数数据异常时,即时发送预警给巡检员,防患于未来。
云日志里说乾坤
日志分析真有用
监控告警样样行
爆炒产品来祭天
大鹏讲堂,下次见~
- 中国信息价产品经理日志(3)- 接手新产品首先要做的是什么?
- 经历了N次原型修改,我终于明白什么是老板想要的产品设计!
- 从来往到钉钉,从技术Leader到产品负责人,陶钧到底经历了什么?
- 针对产品经历笔试很好的一篇资料:应届生求职助理产品经理岗位,总是通不过笔试,下面是我一次笔试题目的答案,请问出了什么问题?
- 技本功丨智能监控,在袋鼠云日志运用中都经历了什么……
- 产品定位,什么是产品?什么是产品定位?
- jpa hibernate 打印sql,format日志,打印SQL参数,打印什么指令
- 产品 • B端和C端产品经理有什么区别?
- 产品有什么核心价值可供交换
- 什么东西可以修复妊娠纹?2016排行榜产后修复妊娠纹产品
- TripWire公司威胁情报产品做了什么
- 面试产品经理需要注意什么
- 我从创立3家科技公司的经历中学到了什么
- 德式秘籍:产品总监最该学会的管理方法是什么?(一)
- 五十四岁的张曼玉,从豪宅搬到平民区,这些年经历了什么?
- 产品经理的本职是什么?
- 《深入理解计算机系统》——Hello world到底经历了什么?
- 我的世界开发日志1——什么是Mesh
- 启示录:什么是互联网产品?
- 【日志】Java 流行框架(Spring/Struts2/Hibernate/iBatis)都在使用什么日志组件