温州网站建设小程序,网站建设参考的文献,分销网站手机模板,360建筑网官网下载摘要#xff1a; 提取异常日志是个大难题 面对海量的日志(TB乃至PB级别#xff09;#xff0c;如何从日志中挖掘出异常信息对于大部分的开发者而言是一个大难题。例如#xff0c;判断机器的延时是否正常#xff0c;部分request是否正常。通常#xff0c;我们对于异常的数…摘要 提取异常日志是个大难题 面对海量的日志(TB乃至PB级别如何从日志中挖掘出异常信息对于大部分的开发者而言是一个大难题。例如判断机器的延时是否正常部分request是否正常。通常我们对于异常的数据要及时的报警以尽快的处理。
提取异常日志是个大难题面对海量的日志(TB乃至PB级别如何从日志中挖掘出异常信息对于大部分的开发者而言是一个大难题。例如判断机器的延时是否正常部分request是否正常。通常我们对于异常的数据要及时的报警以尽快的处理。通常我们是怎么搞得呢 在以前依赖于开发者的经验来根据某些特定的特征判断是否达到了阈值例如根据延时是否达到了某个特定的值或者http 响应码5xx的比例达到了某个阈值。这个阈值依赖于资深的开发者的丰富的经验。AI dev/opsAI算法的迅猛发展给异常日志挖掘提供了新的方向。大名鼎鼎的AI领域专家吴恩达(Andrew NG)在他所教授的Machine Learning课程中提供了一种Abnormal Detection算法。算法通过训练数据集获得一个正态分布。然后检测目标数据是否落在了正态分布的边缘位置如果落在了边缘位置则认为是一个异常数据。算法步骤确定要训练的feature可以是单个指标比如latency也可以是复合指标例如CPU/NetFlow在训练数据集上求得均值μ和方差σ^2对新数据求方程P(x) 接下来我们介绍如何在SQL中使用该算法来检测异常。日志服务提供的异常检测算法以延时为例我们来看哪些延时是异常的。 延时的分布一般是这样的不满足正太的需求要把上述图形转化成正太分布对latency 求对数log(latency)值μ和方差σ^2:* | select numeric_histogram(10,latency), stddev_pop(ln(latency)) as stddev,var_pop(ln(latency)) as variance ,avg(ln(latency)) as avg_ln, avg(latency) as avglatencystddev即标准差variance即方差avg_ln即ln(latency)的均值avglatency即latency的均值提取异常数据| select latency where pow(e(), - pow((ln(latency) - 8.223) ,2)/2/0.3975) /sqrt(2*pi()) / 0.53 0.01 order by latency desc 把方差标准差和均值带入公式使用where筛选出来小于0.01的结果即异常值。可以看到获得的结果明显大于军latency的均值。原文链接干货好文请关注扫描以下二维码