grafanix
Tags
- :mnet:
Project to programmatically generate grafana dashboards using the nix programming language, and provision grafana instances with them. Shitty boilerplate antipatterns surfaced, and I didn't understand why. What went wrong?
Grafana expects dashboards to be configured using JSON - but different dashboard elements - for instance, different panel types or variable types - expect JSON objects with different data in them, and use that data differently. Nowhere are these expectations all documented - you have to go look at the defaults that get populated when creating those elements from the UI, and infer from those what the expectations are. This is stupid. I want autodoc. I just want types goddammit.
In the process of writing the damn gluey mess I also inevitably had to interface with grafana's horrendous slowness. There has to be a better way to render these graphs than what it's doing. There just has to be.
All in all, a profoundly educational experience: I learned a lot about what I need and want software to do.
Made me want to wirte my own metrics dashboard siutation.