问题描述
SELECT Stddev(value) FROM db WHERE cat = 'time' AND metricName = 'cpu Time' AND (server='s1' OR server='s2') AND time > Now() - 1h GROUP BY server
解决方法
这可以通过从 v1.56.0 开始的 VictoriaMetrics 中的以下 MetricsQL 查询来完成:
unsigned int packet;
Sin >> packet;
ap_uint<32> packet_uint32 = *((ap_uint<32>*)&packet); // casting (not elegant,but works)
ap_int<8> b = packet_uint32.range(7,0);
ap_int<8> g = packet_uint32.range(15,8);
ap_int<8> r = packet_uint32.range(23,16); // In case they are in the wrong bit range/order,just flip the r,g,b assignements
b /= 2;
g /= 2;
r /= 2;
packet_uint32.range(7,0) = b;
packet_uint32.range(15,8) = g;
packet_uint32.range(23,16) = r;
packet = packet_uint32.to_int();
Sout << packet;
此查询必须发送到 histogram_stddev(
sum(
histogram_over_time(
db_value{cat="time",metric_name="CPU Time",server=~"s1|s2"}[1h]
)
) by (vmrange,server)
)
处理程序。