微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将多个搜索组合成单值可视化的网格布局

如何解决将多个搜索组合成单值可视化的网格布局

我有许多联网设备,我正在从 Splunk 中提取温度和湿度数据并将其摄取到 Splunk 中。每个设备都位于一个物理位置,并且大多数(但并非全部)都有两个传感器。

最适合我需求的面板是使用单值可视化显示所有位置所有传感器的当前温度的面板。我可以使用以下查询创建两个不同的面板,但我想弄清楚是否可以将它们组合起来创建一个仪表板面板。

index="climate" | timechart latest(s1_temp) as "S1_Temp" by location

index="climate" | timechart latest(s2_temp) as "S2_Temp" by location
<panel>
      <single>
        <search>
          <query>index="climate" | timechart latest(s1_temp) as "S1_Temp" by location</query>
          <earliest>-24h@h</earliest>
          <latest>Now</latest>
          <sampleRatio>1</sampleRatio>
        </search>
        <option name="colorBy">value</option>
        <option name="colorMode">none</option>
        <option name="drilldown">none</option>
        <option name="numberPrecision">0.00</option>
        <option name="rangeColors">["0xdc4e41","0xf8be34","0x53a051","0xdc4e41"]</option>
        <option name="rangeValues">[67,69,85,87]</option>
        <option name="showSparkline">1</option>
        <option name="showTrendindicator">1</option>
        <option name="trellis.enabled">1</option>
        <option name="trellis.scales.shared">1</option>
        <option name="trellis.size">medium</option>
        <option name="trendColorInterpretation">standard</option>
        <option name="trenddisplayMode">absolute</option>
        <option name="trendInterval">-24h</option>
        <option name="unit">°</option>
        <option name="unitPosition">after</option>
        <option name="useColors">1</option>
        <option name="useThousandSeparators">1</option>
      </single>
    </panel>

虽然我可以使用柱状图轻松显示数据,但带有颜色和迷你图的单个值非常适合我的用例。我已经尝试了很多东西,但还没有弄清楚。在这一点上,我认为答案要么非常简单,要么不可能。

解决方法

虽然我仍在努力找出一些小细节,但我最终还是找到了一些帮助我获得所需输出的文档。以下查询基本上结合了两个数据系列,并允许我通过创建一个新字段来创建网格面板,以创建一个新的、独特的位置和传感器混搭。

index="climate" 
  | bin _time span=5m 
  | stats latest(s1_temp) as "S1",latest(s2_temp) as "S2" by _time,location 
  | eval reading="S1 S2" 
  | makemv reading 
  | mvexpand reading 
  | eval Temp=case(reading=="S1",S1,reading=="S2",S2) 
  | eval Series=location+"-"+reading 
  | timechart latest(Temp) by Series

我的问题的答案实际上在Chart Multiple Data Series下的官方文档中。当我搜索文档时,我只是没有提出正确的问题。希望有人觉得这很有用。

如果有更有效的方法,我还没有找到。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。