#grafana #plugin #sdk #state #backend

grafana-plugin-sdk

SDK for building Grafana backend plugins

6 releases (3 breaking)

Uses new Rust 2021

0.4.2 Sep 19, 2022
0.4.1 Sep 19, 2022
0.3.0 Apr 14, 2022
0.2.0 Mar 16, 2022
0.1.0 Dec 8, 2021

#1 in #grafana

Download history 7/week @ 2022-06-10 2/week @ 2022-06-17 4/week @ 2022-07-01 35/week @ 2022-07-08 9/week @ 2022-07-15 12/week @ 2022-07-22 13/week @ 2022-07-29 6/week @ 2022-08-05 26/week @ 2022-08-12 6/week @ 2022-08-19 14/week @ 2022-08-26 2/week @ 2022-09-02 9/week @ 2022-09-09 63/week @ 2022-09-16 29/week @ 2022-09-23

103 downloads per month

MIT/Apache

285KB
5K SLoC

Grafana Plugin SDK for Rust

Build Status docs.rs crates.io

This is a Rust implementation of the Grafana Plugin SDK for Rust, similar to the Grafana Plugin SDK for Go. It can be used to build backend plugins for Grafana.

Current state

This SDK is still in development. The protocol between the Grafana server and the plugin SDK is considered stable, but the convenience functionality in the SDK may experience breaking changes.

Disclaimer: this Rust SDK is not (yet) an official Grafana Labs project! Use the Go SDK if higher maintainability and support standards are required. That being said, this crate will adhere to semantic versioning, and the authors will aim to respond to issues as far as possible.

The grafana-sample-backend-plugin-rust repository contains a sample backend plugin with a backend written in Rust, along with a docker-compose setup with automatic plugin reloading.

Developing

Releasing

Releases are handled using cargo-release. Run the following to dry-run release a new version of all crates:

cargo release <major|minor|patch> --workspace

If everything looks OK, add the --execute flag to go through with the release.

License

The Rust SDK is licensed under either of the following, at your option:

Dependencies

~14–20MB
~371K SLoC