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

如何在Grafana告警HTML模板中去除JSON数值的尾部多余零

问题根因

Grafana告警邮件模板使用的是Go语言标准模板引擎,你之前尝试的number过滤器是Grafana前端面板的专属模板语法,toFixed是JavaScript方法,均不适用于该场景,因此不会生效。

解决方案

直接使用Go模板内置的类型转换或格式化函数处理数值即可,针对你的需求有两种常用实现方案:

方案1:所有指标均为整数,不需要保留小数

直接用内置int函数将浮点型数值转为整数,把模板中原来的{{.Value}}替换为{{int .Value}}即可。
修改后的对应代码片段如下:

<td class="six last" style="width: 100px; word-break: break-word; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; border-collapse: collapse !important; color: #222222; font-family: 'Open Sans', 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; font-weight: normal; line-height: 19px; font-size: 14px; -webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; margin: 0; padding: 0px 0px 10px;" align="right" valign="top">
  <h5 class="data" style="color: #222222; font-family: 'Open Sans', 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; font-weight: normal; line-height: 1.3; word-break: normal; font-size: 16px; -webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; margin: 0; padding: 0;" align="right">{{int .Value}}</h5>
</td>

方案2:需要自定义保留小数位数

用printf函数做格式化输出,可灵活调整小数保留位数:

  • 保留0位小数:{{printf "%.0f" .Value}}
  • 保留1位小数:{{printf "%.1f" .Value}}
  • 保留2位小数:{{printf "%.2f" .Value}}

兼容混合数值场景的扩展方案

如果你的指标既有整数也有小数,希望整数输出不带小数、小数按需要保留位数,可以用判断逻辑实现:

{{$val := .Value}}
{{if eq $val (int $val)}}
  {{int $val}}
{{else}}
  {{printf "%.2f" $val}}
{{end}}

内容的提问来源于stack exchange,提问作者Maxi Albert

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.11 10:54:03