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

如何设置Kibana Gauge动态最大值并筛选Logstash当日数据表数据?

解决方案:动态设置Kibana Gauge上限 + 过滤当日数据

嘿,我来帮你搞定这两个Kibana配置问题,这俩需求在监控数据库表空间时挺常见的,一步步来:


一、给每张表的Gauge设置动态上限(跟随最大分配容量变化)

Kibana的Gauge默认是固定上限,但我们可以通过聚合来动态绑定每张表的最大分配容量字段,具体操作如下:

  1. 打开Kibana的Visualize Library,点击「Create visualization」,选择「Gauge」,再选中你的Logstash索引模式。
  2. 在Metrics面板配置两个聚合:
    • 第一个聚合:选择Max(因为每张表的最大分配容量是单条数据里的固定值,用Max能准确取到它),字段选你存储最大容量的字段(比如max_allocated_space,换成你实际的字段名),这个聚合会作为Gauge的动态上限。
    • 第二个聚合:选择Last value或者Average(根据你数据的更新频率,Last value更适合实时更新的场景),字段选已用空间字段(比如used_space),这就是Gauge要展示的当前占用值。
  3. 切换到Options面板,找到「Upper bound」选项:
    • 选择「Custom」,然后点击右侧的下拉三角,选择你刚才创建的Max聚合(比如显示为max(max_allocated_space)),这样Gauge的上限就会自动跟着每张表的最大容量变化了。
  4. 按表分组生成独立Gauge:
    • 回到Metrics面板下方的Buckets区域,点击「Add」→「Split Series」,选择Terms聚合,字段选你的表名字段(比如table_name),这样每个表都会生成一个单独的Gauge,各自用自己的最大容量做上限。

二、仅显示当日时间范围内的数据

有三种方式可以实现,你可以根据需求选:

方式1:可视化层面绑定当日时间过滤

  • 在可视化编辑页,右上角的时间选择器里,直接选择「Today」,点击「Apply」。
  • 保存可视化时,勾选「Save time filter with visualization」,这样下次打开这个可视化就默认显示当日数据。

方式2:仪表盘层面设置全局当日过滤

  • 创建仪表盘并添加刚才的Gauge可视化后,在仪表盘右上角的时间选择器选「Today」,点击「Apply」。
  • 保存仪表盘时勾选「Save time filter with dashboard」,整个仪表盘就会默认加载当日数据。

方式3:用查询语句强制过滤当日数据(最稳妥,避免误改时间选择器)

在可视化的Query输入框里,添加以下时间过滤语句:

@timestamp:[now/d TO now/d+1d]

这个语句会匹配当天0点到次日0点的所有数据,不管时间选择器怎么设置,都会只显示当日的表空间数据,适合需要固定过滤规则的场景。


内容的提问来源于stack exchange,提问作者Michael Dz

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:22:19