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

如何用Kibana 5.5创建可视化展示服务器成功交易占比?

在Kibana 5.5中按时间维度统计成功交易占比的实现方案

Hey Moshe,针对你想要在Kibana 5.5里展示按时间维度统计的成功交易(httpCode:200)占比需求,我给你整理了两种实操方案,都是适配5.5版本的:

方案一:使用Filter Ratio聚合(推荐,无需额外字段)

这是最直接的方式,专门用来计算两个过滤条件的比值:

  1. 进入Kibana的Visualize界面,点击右上角的Create new visualization,选择Line Chart(用来展示时间趋势的占比)。
  2. 选择你对应的索引模式,进入可视化配置页面。
  3. 配置X轴(时间维度):
    • 在左侧Buckets区域,点击Add → 选择X-Axis → 聚合类型选Date Histogram。
    • 字段选择你的时间字段(比如@timestamp),时间间隔根据你的业务需求选择(比如小时、天)。
  4. 配置Y轴(占比计算):
    • 在左侧Metrics区域,点击Add → 选择Filter Ratio。
    • 分子(Numerator):点击Add filter,设置过滤条件为httpCode:200(如果httpCode是字符串类型,要写成httpCode:"200"),这代表成功交易的数量。
    • 分母(Denominator):点击Add filter,设置过滤条件为*:*,这代表所有交易的总数量。
    • 给这个聚合起个清晰的名字,比如成功交易占比。
    • 找到Format选项,选择Percent,这样结果会以百分比形式展示(比如0.72会显示为72%)。
  5. 点击顶部的Apply changes,就能看到按时间维度变化的成功交易占比折线图了。

方案二:使用Calculation聚合(适合灵活自定义场景)

如果Filter Ratio聚合不符合你的需求,也可以通过脚本计算每个文档的贡献值,再取平均值得到占比:

  1. 同样创建Line Chart并选择索引模式,配置好X轴的Date Histogram(和方案一步骤3一致)。
  2. 配置Y轴:
    • 在Metrics区域点击Add → 选择Calculation。
    • 在Script输入框中写入:doc['httpCode'].value == 200 ? 1 : 0(如果httpCode是字符串,改成doc['httpCode'].value == "200" ? 1 : 0)。
    • 聚合类型选择Average,因为每个符合条件的文档贡献1,不符合的贡献0,取平均值就是占比。
    • 同样设置Format为Percent,命名为成功交易占比。
  3. 点击Apply changes即可查看结果。

小提示

  • 确保你的时间字段在索引模式中已经被设置为Time Field,否则Date Histogram无法正常工作。
  • 如果httpCode字段的类型不确定,可以在Management → Index Patterns中查看字段类型,避免过滤条件不匹配。

内容的提问来源于stack exchange,提问作者Moish Cohen

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 04:15:34