日志服务查询分析功能支持通过通用聚合函数进行日志分析,详细语句及含义如下:

语句 含义 示例
arbitrary(x) 随机返回x列中的一个值。 latency > 100 | select arbitrary(method)
avg(x) 计算x列的算数平均值。 latency > 100 | select avg(latency)
checksum(x) 计算某一列的checksum,返回base64编码。 latency > 100 | select checksum(method)
count(*) 计算某一列的个数。 -
count(x) 计算某一列非空的个数。 latency > 100 | count(method)
count_if(x) 计算x=true的个数。 latency > 100 | count_if(url like ‘%abc’)
geometric_mean(x) 计算某一列的几何平均数。 latency > 100 | select geometric_mean(latency)
max_by(x,y) 返回当y取最大值时,x当前的值。 查询延时最高的时候,对应的method:latency>100 | select max_by(method,latency)
max_by(x,y,n) 返回y最高的n行,对应的x的值。 查询延时最高的3行,对应的method:latency > 100 | select max_by(method,latency,3)
min_by(x,y) 返回当y取最小值时,x当前的值。 查询延时最低的请求,对应的method:* | select min_by(x,y)
min_by(x,y,n) 返回y最小的n行,对应的x的值。 查询延时最小的3行,对应的method: * | select min_by(method,latency,3)
max(x) 返回最大值。 latency > 100| select max(inflow)
min(x) 返回最小值。 latency > 100| select min(inflow)
sum(x) 返回x列的和。 latency > 10 | select sum(inflow)
bitwise_and_agg(x) 对某一列的所有数值做and计算。 -
bitwise_or_agg(x) 对某一列的数值做or计算。 -