I currently use Grafana to view how all sorts of stuff changes over time. It gets the job done, but is far from ideal:

  • edititng the data queries is intended to only be done in the web ui (so I end up just copypasting stuff to/from pycharm to at least have a nice text editor)
  • can’t store config in a git repo (yes, I can dump & restore the config as a huge json, but AFAIK the json structure is considered an internal api, so it can change at any time making versioning useless)
  • all plot parameters other than the data query have to be configured via gui

I did try grafanalib some time ago and it didn’t feel right. It was quite behind in plot types (Grafana screamed at me “don’t use this plot type, use the new one instead”), and is using unofficial api (the json config again).

Any suggestions? It doesn’t even have to be a ready-to-use tool, a library/framework for making dashboards will also do.

  • arjache@kbin.social
    link
    fedilink
    arrow-up
    2
    ·
    1 year ago

    It still has the limitations of JSON churn, but I find jsonnet to be a nice functional-style DSL in which to write grafana dashboards.

    • equidamoid@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      1 year ago

      Something like that, where I just write a function that spits out a numpy array or something like that and it gets plotted, would be great, but there is one thing Grafana can do and vega-altair, plotly and even matplotlib (*): a UI that allows to select a time interval to view.

      So I can freely pan/zoom in/out in time, and only the required part of the data will be loaded (with something like select ... where time between X and Y under the hood). So if I look at a single day, it will only load that day, and only if I dare to zoom out too much it will spend some time loading everything from the last year.

      (*) yes, you can do interactive things with matplotlib, but you don’t really want to, unless you must…