在 Splunk 中显示服务器状态

问题描述 投票:0回答:1

我想创建一个显示服务器状态的 Splunk 表。

我有一个查询,当前返回服务器及其类型。

但是,我不知道如何显示它的状态,即是否正常或是否有错误。

我需要将任何类似于“200”http 状态的内容与“OK”相匹配,并将任何带有错误消息的内容与“ERROR”相匹配

| eval status=case( 
                  match(_raw, "HTTP/1.1\" 200"), "OK", 
                  match(_raw, "ERROR"), "ERROR", 
                  true(), "Unknown") 

但是,我不确定如何在我的表格中显示它。

我只对在查询中硬编码的少数服务器感兴趣。

这是我到目前为止所拥有的,它显示了服务器名称和节点类型。

index=app 
| WHERE host IN ("dgp4ds2345", "dgp4ds2346", "dgp4ds2347", "dgp4ds2348", "dgp4ds2349")
| eval node_type=case(
                  host IN ("dgp4ds2345", "dgp4ds2346", "dgp4ds2347"), "processor",
                  host IN ("dgp4ds2348", "dgp4ds2349"), "storage")  
| table server, type, primary

这就是我希望我的桌子最终的样子:

服务器 类型 初级
dgp4ds2345 处理器 好的
dgp4ds2487 处理器 好的
dgp4ds2289 存储 好的
splunk
1个回答
0
投票

您有代码。 如果你把这些碎片拼凑起来,它会起作用吗? 如果没有,你会得到什么?

index=app host IN ("dgp4ds2345", "dgp4ds2346", "dgp4ds2347", "dgp4ds2348", "dgp4ds2349")
| eval type=case(
                  host IN ("dgp4ds2345", "dgp4ds2346", "dgp4ds2347"), "processor",
                  host IN ("dgp4ds2348", "dgp4ds2349"), "storage")  
| eval primary=case( 
                  match(_raw, "HTTP/1.1\" 200"), "OK", 
                  match(_raw, "ERROR"), "ERROR", 
                  true(), "Unknown")
| rename host as server
| table server, type, primary
© www.soinside.com 2019 - 2024. All rights reserved.