目标是提供可用性百分比。我想每15分钟检查一次server1、server2和server3的唯一计数是否等于每个间隔的3(表示系统完全健康(。根据这个计数,我想检查splink中选择的任何时间段的平均值,以输出平均值并转换为百分比。
index="os" sourcetype=ps host="server1" OR host="server2" OR host="server3"
| search "/logs/temp/random/path" OR "application_listener"
| dedup host
| timechart span=30m count
每个间隔的计数应为3。
不清楚示例SPL解决了多少需求,所以我假设它什么都不做。
dedup
后跟timechart
意味着timechart
命令将只看到3个事件——每个主机一个。这不是一个有用的图表。我建议使用dc(host)
,而不是获取每个间隔的主机数。
appendpipe
命令可用于在末尾添加平均值和百分比值。
index="os" sourcetype=ps host="server1" OR host="server2" OR host="server3"
| search "/logs/temp/random/path" OR "application_listener"
| timechart span=30m dc(host) as count
| appendpipe [ stats avg(count) as Avg | eval Pct=round(Avg*100/3,2) ]