You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Splunk Dashboard中正确使用Token实现面板联动查询?

问题原因

当前itemToken存储的是完整的Splunk查询语句,而非lookup后的最终值列表。当在第一个panel的查询中使用$itemToken$时,会直接将整个查询语句嵌入,导致IN()语法错误(IN()需要接收值列表,而非查询代码)。

解决方案

通过<search>标签在下拉框变更事件中执行lookup逻辑,将查询结果的具体值赋值给itemToken,而非存储查询语句。这样token会缓存lookup后的最终值,可在所有panel中直接复用。

修改后的完整代码

<form>
  <label>ZZ_Test</label>
  <fieldset submitButton="false">
    <input type="dropdown" token="groupToken">
      <label>Group</label>
      <choice value="group1">group1</choice>
      <choice value="group2">group2</choice>
      <choice value="group3">group3</choice>
      <default>group1</default>
      <change>
        <!-- 执行lookup查询,获取对应items值 -->
        <search>
          <query>|makeresults count=1|eval b="$groupToken$"|lookup mycsv.csv group as b OUTPUT item AS items|eval items=mvjoin(items,",")</query>
          <!-- 查询完成后,将结果赋值给itemToken -->
          <done>
            <set token="itemToken">$result.items$</set>
          </done>
        </search>
      </change>
    </input>
  </fieldset>
  <row>
    <panel>
      <single>
        <search>
          <!-- 直接使用缓存的itemToken值,语法正确 -->
          <query>index=myIndex | search items IN ($itemToken$)</query>
          <earliest>$earliest$</earliest>
          <latest>$latest$</latest>
        </search>
        <option name="drilldown">none</option>
        <option name="refresh.display">progressbar</option>
      </single>
    </panel>
  </row>
  <row>
    <panel>
      <event>
        <search>
          <!-- 直接展示缓存的items值 -->
          <query>|makeresults count=1|eval关联items="$itemToken$"</query>
          <earliest>$earliest$</earliest>
          <latest>$latest$</latest>
        </search>
        <option name="list.drilldown">none</option>
      </event>
    </panel>
  </row>
</form>

关键修改说明

  1. 下拉框变更事件优化:用<search>执行lookup逻辑,通过<done>标签捕获查询结果,将$result.items$(lookup生成的逗号分隔值列表)赋值给itemToken,而非存储查询语句。
  2. Panel查询修正:第一个panel的查询直接使用$itemToken$作为IN()的参数,语法符合Splunk要求;第二个panel可通过简单查询直接展示缓存的items值。

内容的提问来源于stack exchange,提问作者Janardan Kelkar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 00:05:38