【问题标题】:Combining multiples searches into a trellis layout of single value visualizations将多个搜索组合到单值可视化的格状布局中
【发布时间】:2021-05-17 17:48:41
【问题描述】:

我有许多联网设备,我从中提取温度和湿度数据并将其摄取到 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","0xf8be34","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>

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

【问题讨论】:

    标签: splunk splunk-dashboard


    【解决方案1】:

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

    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下的官方文档中。当我搜索文档时,我根本没有问正确的问题。希望有人觉得这很有用。

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-13
      • 2021-10-16
      • 1970-01-01
      • 2016-12-07
      相关资源
      最近更新 更多