I. count
定义的一段时间内值的数量。
字段:(sec|#num,,,<time_shift>)
II. sec,num
1.sec,num
(秒,#值)-->(sec|#num,
评估期间以秒为单位或以最新收集的值(按#号开头)
2, :(可选) - 需要的图案(整数项目 - 精确匹配;浮法项目 - 内0.000001匹配)
3,operator (optional)可选的
III. 2.支持的选项(区分大小写)
eq 等于
ne不等于
gt 更大
ge 大于或等于
lt 少 勒 - 小于或等于
le 小于或EQUA
默认eq (default), ne, gt, ge, lt, le 都支持整数和浮点数,eq,ne
字符串,文本和日志项
正则表达式的支持整数项目 EQ(默认),NE,GT,GE,LT,LE正则表达式
EQ,NE,正则表达式,iregexp支持字符串,文本和日志项
regexp :区分大小写的正则表达式
iregexp:不区分大小写的正则表达式
IV. 3.支持的值类型:
浮动,INT,STR,文本,日志
V. 4.示例:
这里可以为秒有可以为m(分钟)
count(10m) 最后10分钟值的数量
count(600) 最后10分钟值的数数
COUNT(600,12) 最后十分钟拿到的值等于12
count(10m,12) 最后十分钟拿到的值等于12
count(600,12,“gt”) 最后十分钟拿到的值大于12
count(#10,12,"gt") 最近10个值中,值大于12的个数
count(600,12,"gt",86400) 24小时之前的10分钟内值大于12的个数
count(600,6/7,"band")-thenumberofvaluesforlast10minuteshaving'110'(inbinary)inthe3leastsignificantbits.
count(600,,,86400)24小时之前的10分钟数据值的个数
VI. 5.实例
1,真假例子
假设我现在的到的值1位真,0位假
{111cn.net:runing.count(2m,0)}>3
111cn.net:runing是items
如果2分钟内拿到的值为0,大于3次则触发,我想你应该明白,你拿到的1的值肯定为真
这里你需要注意的是,如果使用count,这里的2分钟拿到0的值的次数如果大于3此就触发是建立在你itmes在两分钟内可以去探测至少3次以上。你可能需要修改itmes取值的实际,否则没有意义
2,icmpping
{www.111cn.net:icmpping.count(5m,0)}>2
ping通就是1,ping不同就是0
这里使用的是icmpping,这里的时间是最近5分钟,我们假设30秒ping一次,5分之可以ping 10次,我们假设如果在最近5分钟内有2次ping不同就触发
3,gt
{www.111cn.net:redis[,avg1].count(10m,10,"gt")}>2
最近十分钟内的平均值大于10的次数超过2次则触发
{www.111cn.net:redis.count(#10,5,"gt",86400)}>2
24小时之前最近10个值中值大于5的个数大于两次则触发