当前位置: 首页 > 工具软件 > Bosun > 使用案例 >

Bosun报警语法

澹台成龙
2023-12-01

bosun是常用的报警系统,通过配置metrics(items)图可以得到某一个参数在指定时间内的变化,比如设为10s,每隔10s就会去拉这个数据并画图,依据这个图可以实现对某些参数的监控,以此作为报警的依据。
大多数公司的基础架构组都会出一套完备的解决方案,但是核心甚至规则的自定义还是需要bosun语法,因此学习下。

基本的就是用q(xxx)来计算metrics图里面值的sum,count,change等等,并赋值给一个值,值的前面要带上$表示是一个变量, 具体语法可以参考这篇文章,写的很详细
举两个常用的例子
cpu:
avg(q(“sum:sys.cpu{host=xxx}”, “5m”, “”)) > 0.8
表示5分钟内cpu平均高于80%

error_log达到一定数量:
lognum=avg(q(sum:rate:myservice.throughputlevel=ERROR|CRITICAL,5m,1m))warn= l o g n u m = a v g ( q ( “ s u m : r a t e : m y s e r v i c e . t h r o u g h p u t l e v e l = E R R O R | C R I T I C A L ” , “ 5 m ” , “ 1 m ” ) ) w a r n = log_num > 1000
表示error和critical级别的log 1s注入超过1000

 类似资料: