gpt4 book ai didi

Grafana 面板 JSON 到 Jsonnet?

转载 作者:行者123 更新时间:2023-12-05 05:07:37 31 4
gpt4 key购买 nike

我能够生成面板 JSON 以像这样配置 Grafana 仪表板:

jsonnet -J ~/grafana/grafonnet-lib mydash.jsonnet > mydash.json

不过,我喜欢在 Grafana 本身中操作和编辑生成的仪表板。

让我感到非常困惑和沮丧的是,一旦我通过调整其设置等在 Grafana 中进行了 UI 更改……如何将其返回到 Jsonnet 中?现在对我来说这是一个 super 尴尬的开发体验。我导出面板 JSON 并在单独的窗口中打开源 Jsonnet,并认真尝试移植我的更改。

在您可能拥有的 JSON 中,这尤其痛苦:

      "sparkline": {
"fillColor": "rgba(31, 118, 189, 0.18)",
"full": true,
"lineColor": "rgb(31, 120, 193)",
"show": true
},

您需要手动转换为 Jsonnet/Graffonet-lib:

sparklineShow=true,
sparklineFull=true,
colorBackground=true,

我是否遗漏了技巧或工作流程?

最佳答案

您必须编辑 mydash.jsonnet 并在其中添加所需的属性。我知道目前没有从 grafana-json 转换回 grafonnet 的自动化方法。有时找到合适的属性有点痛苦。

您正在寻找的属性在这里:https://github.com/grafana/grafonnet-lib/blob/master/grafonnet/singlestat.libsonnet#L44

像这样的东西应该可以工作:

local grafana = import 'grafonnet/grafana.libsonnet';grafana.dashboard.new(  'Sparkline Example').addPanel(  grafana.singlestat.new(    'uptime',    format='s',    span=4,    valueName='current',    sparklineFillColor='rgba(31, 118, 189, 0.18)',    sparklineFull=true,    sparklineLineColor='rgb(31, 120, 193)',    sparklineShow=true,  )  .addTarget(    grafana.prometheus.target(      'time()',    )  ), gridPos={    x: 0,    y: 0,    w: 24,    h: 3,  })

关于Grafana 面板 JSON 到 Jsonnet?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58970563/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com