是否可以根据Kibana中的计数进行过滤?

时间:2014-06-03 17:15:53

标签: angularjs logstash kibana

我们有Kibana设置在我们的日志中搜索大约50个不同的术语。遗憾的是,由于我们将50个术语堆叠在一起,因此在图例中显示这些查询中的每个别名非常混乱。我知道可以将所有图例隐藏在一起,但我想在UI上设置个别计数(类似于Splunk)。有没有办法使用Filters只包含大于0的查询?或者是否可以编辑图例本身以隐藏任何具有0结果的查询?感谢

1 个答案:

答案 0 :(得分:1)

当前版本的kibana(v3.1.0)无法实现这一目标

我想你正在谈论直方图面板。 您可以自定义Kibana代码,以隐藏直方图面板图例中有0次点击的任何查询。

这将是要更改的文件和行:https://github.com/elasticsearch/kibana/blob/c19105cf3f2dbefe7aa41caebca5bcf40efff3b7/src/app/panels/histogram/module.html#L55

自:

<span ng-show="panel.legend" ng-repeat='series in legend' class="histogram-legend">
  <i class='icon-circle' ng-style="{color: series.query.color}"></i>
  <span class='small histogram-legend-item'>
    <span ng-if="panel.show_query">{{series.query.alias || series.query.query}}</span>
    <span ng-if="!panel.show_query">{{series.query.alias}}</span>
    <span ng-show="panel.legend_counts"> ({{series.hits}})</span>
  </span>
</span>

要:

<span ng-show="panel.legend" ng-repeat='series in legend' class="histogram-legend">
  <span ng-show='series.hits > 0'>
      <i class='icon-circle' ng-style="{color: series.query.color}"></i>
      <span class='small histogram-legend-item'>
        <span ng-if="panel.show_query">{{series.query.alias || series.query.query}}</span>
        <span ng-if="!panel.show_query">{{series.query.alias}}</span>
        <span ng-show="panel.legend_counts"> ({{series.hits}})</span>
      </span>
  </span>
</span>