Package Usage: go: github.com/clambin/simplejson/v3
Package simplejson provides a Go implementation for Grafana's SimpleJSON datasource: https://grafana.com/grafana/plugins/grafana-simple-json-datasource
A simplejson server is an HTTP server that supports one or more handlers. Each handler can support multiple targets,
each of which can be supported by a timeseries or table query. Optionally tag can be used to alter the behaviour of the query
(e.g. filtering what data should be returned). Finally, a handler can support annotation, i.e. a set of timestamps with associated text.
To create a SimpleJSON server, create a Server and run it:
This starts a server, listening on port 8080, with one target "my-target", served by myHandler.
A handler serves incoming requests from Grafana, e.g. queries, requests for annotations or tag.
The Handler interface contains all functions a handler needs to implement. It contains only one function (Endpoints).
This function returns the Grafana SimpleJSON endpoints that the handler supports. Those can be:
Here's an example of a handler that supports timeseries queries:
SimpleJSON supports two types of query responses: timeseries responses and table responses.
Timeseries queries return values as a list of timestamp/value tuples. Here's an example of a timeseries query handler:
Table Queries, on the other hand, return data organized in columns and rows. Each column needs to have the same number of rows:
The /annotations endpoint returns Annotations:
NOTE: this is only called when using the SimpleJSON datasource. simPod / GrafanaJsonDatasource does not use the /annotations endpoint.
Instead, it will call a regular /query and allows to configure its response as annotations instead.
The /tag-keys and /tag-values endpoints return supported keys and key values respectively for your data source.
A Grafana dashboard can then be confirmed to show those keys and its possible values as a filter.
The following sets up a key & key value handler:
When the dashboard performs a query with a tag selected, that tag & value will be added in the request's AdHocFilters.
simplejson exports two Prometheus metrics for performance analytics:
For information on query arguments and tags, refer to the documentation for those data structures.
21 versions
Latest release: over 2 years ago
2 dependent packages
View more package details: https://packages.ecosyste.ms/registries/proxy.golang.org/packages/github.com/clambin/simplejson/v3
View more repository details: http://repos.ecosyste.ms/hosts/GitHub/repositories/clambin%2Fsimplejson
Dependent Repos 2

clambin/covid19 📦
A lightweight Covid19 data trackerSize: 29.8 MB - Last synced: 11 months ago - Pushed: about 2 years ago
