【问题标题】:Grafana Panel JSON to Jsonnet?Grafana 面板 JSON 到 Jsonnet?
【发布时间】:2020-03-17 03:04:39
【问题描述】:

我能够生成 Panel JSON 来配置 Grafana 仪表板,如下所示:

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

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

我绝对感到困惑和沮丧的是,一旦我通过调整其设置等方式在 Grafana 中进行了 UI 更改......如何将其 返回 到 Jsonnet 中?现在对我来说,这是一个超级尴尬的开发体验。我导出面板 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,

我是否缺少技巧或工作流程?

【问题讨论】:

    标签: grafana jsonnet


    【解决方案1】:

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

    您要找的房源在这里:https://github.com/grafana/grafonnet-lib/blob/master/grafonnet/singlestat.libsonnet#L44

    这样的事情应该可以工作:

    本地 grafana = import 'grafonnet/grafana.libsonnet'; grafana.dashboard.new( '迷你图示例' ) .addPanel( grafana.singlestat.new( '正常运行时间', 格式='s', 跨度=4, valueName='当前', sparklineFillColor='rgba(31, 118, 189, 0.18)', sparklineFull=真, sparklineLineColor='rgb(31, 120, 193)', sparklineShow=真, ) .addTarget( grafana.prometheus.target( '时间()', ) ), 网格位置={ x: 0, y: 0, w: 24, h: 3, } )

    【讨论】:

      猜你喜欢
      • 2021-08-30
      • 2020-10-24
      • 2019-09-07
      • 2016-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-10
      相关资源
      最近更新 更多