All Projects → jdbranham → Grafana Diagram

jdbranham / Grafana Diagram

Licence: apache-2.0
A Grafana plugin to visualize metrics in a diagram using flow charts, gantt charts, sequence diagrams, or class diagrams

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to Grafana Diagram

Oci Grafana Metrics
Grafana datasource plugin for OCI metrics
Stars: ✭ 34 (-89.03%)
Mutual labels:  plugin, grafana
Fluent Bit Go Loki
[Deprecated] The predessor of fluent-bit output plugin for Loki. https://github.com/grafana/loki
Stars: ✭ 38 (-87.74%)
Mutual labels:  plugin, grafana
Grafana Flowcharting
Flowcharting, plugin for Grafana to create complexe visio's draws style like technical architectures, floorplan, diagrams, hierarchical schema based on draw.io
Stars: ✭ 463 (+49.35%)
Mutual labels:  grafana, diagram
Jmeter Elasticsearch Backend Listener
JMeter plugin that lets you send sample results to an ElasticSearch engine to enable live monitoring of load tests.
Stars: ✭ 72 (-76.77%)
Mutual labels:  plugin, grafana
chartjs-plugin-datasource-prometheus
Chart.js plugin for Prometheus data loading
Stars: ✭ 77 (-75.16%)
Mutual labels:  grafana, tsdb
spotify-heroic-datasource
Heroic datasource for Grafana
Stars: ✭ 15 (-95.16%)
Mutual labels:  grafana, tsdb
Grav Plugin Diagrams
Diagrams is a Grav plugin that adds simple and powerful diagrams functionality
Stars: ✭ 37 (-88.06%)
Mutual labels:  plugin, diagram
Victoriametrics
VictoriaMetrics: fast, cost-effective monitoring solution and time series database
Stars: ✭ 5,558 (+1692.9%)
Mutual labels:  tsdb, grafana
Redis Timeseries
Future development of redis-timeseries is at github.com/RedisLabsModules/redis-timeseries.
Stars: ✭ 197 (-36.45%)
Mutual labels:  tsdb, grafana
victoriametrics-ru-links
Список постов и видеозаписей об VictoriaMetrics на русском языке
Stars: ✭ 1 (-99.68%)
Mutual labels:  grafana, tsdb
Questdb
An open source SQL database designed to process time series data, faster
Stars: ✭ 7,544 (+2333.55%)
Mutual labels:  grafana, tsdb
Speech recognition
A Flutter plugin to use speech recognition on iOS & Android (Swift/Java)
Stars: ✭ 302 (-2.58%)
Mutual labels:  plugin
Thirsty
Reminds you to drink water - on your terminal.
Stars: ✭ 296 (-4.52%)
Mutual labels:  plugin
Flutter photo manager
Provide flutter with the ability to manage photos.
Stars: ✭ 294 (-5.16%)
Mutual labels:  plugin
Ros qtc plugin
ROS Qt Creator Plug-in (https://ros-qtc-plugin.readthedocs.io)
Stars: ✭ 295 (-4.84%)
Mutual labels:  plugin
Super Progressive Web Apps
SuperPWA helps to convert your WordPress website into Progressive Web Apps instantly. PWA (Progressive Web Apps) demo at : https://superpwa.com and Plugin :
Stars: ✭ 304 (-1.94%)
Mutual labels:  plugin
Bosun
Time Series Alerting Framework
Stars: ✭ 3,226 (+940.65%)
Mutual labels:  tsdb
Godot Android Admob Plugin
Android AdMob plugin for Godot Game Engine 3.2 or higher
Stars: ✭ 292 (-5.81%)
Mutual labels:  plugin
Prometheus
A docker-compose stack for Prometheus monitoring
Stars: ✭ 3,383 (+991.29%)
Mutual labels:  grafana
Envfile
EnvFile 3.0 is a plugin for JetBrains IDEs that allows you to set environment variables for your run configurations from one or multiple files.
Stars: ✭ 293 (-5.48%)
Mutual labels:  plugin

savantly.net

Build Status

Vote for new features

Or help feed my hungry children by donating a few bucks 😅
paypal

I'm also available for custom plugin development contracts [and other technology projects]

grafana-diagram

This is a Grafana panel plugin that provides a way to create flow-charts, sequence diagrams, and gantt charts by leveraging the mermaid.js library.

  • A diagram can be defined using the Mermaid JS syntax.
  • Metric series are used to color the text or background of the shape/node.
  • The target or 'alias' of the series is compared to the ID of the diagram node to find a match, then applies a style to the shape.
  • Composites can be used to aggregate multiple series for a single node, with custom thresholds for each series.

**Note - Special characters in an alias are replace with an underscore. See character replacement below

Quick Start

A diagram definition uses a Markdown like syntax called Mermaid
This is a simple flow chart definition -

graph LR
      A --> B

Producing this graph

default

Supposing you have 2 series with aliases A-series and B-series
In the diagram plugin, you can modify the definition to match the identities of the data -

default

Character Replacement

The following characters in metric names are automatically replaced with an underscore.

" , ; = : { }

TODO

You can add additional metric replacements in the Display tab, under the section Metric Character Replacement:  
A single character can be specified or a regular expression, along with the text to be used for the replacement (the default is underscore).

Examples

With Subgraph

Simple

With custom shapes, aliases, and icons

graph LR
      LB[Load Balancer] -- route1 --> web1
      LB[Load Balancer] --> web2
      web1 --> app1(fa:fa-check app1)
      web1 ==> app2
      web2 ==> app2(fa:fa-ban app2)
      web2 --> app1
      app1 --> D[(database)]

Diagram

Field Options

Diagram

Field Overrides

Diagram

Custom Theme

Diagram

CSS Override

Diagram

Using Variables

Using background as indicator

Diagram

Options

  • Thresholds [field can override]
  • Aggregation Options [field can override]
  • Unbound Color Levels [field can override]
  • Value mapping to text [field can override]
  • Unit Format [field can override]
  • Value of metric to display (min/max/mean/last/) [field can override]
  • Decimal precision [field can override]
  • CSS Override
  • Indicator as background or text color
  • Theme reactive
  • Theme customization
  • Variable replacement in the diagram definition

Link Metrics

Mermaid Notation is the same, but now supports supplying a metric name in the "text".

Specify the metric name in double quotes (for escaping purposes).

Metric Composites

To reflect multiple metrics and their thresholds on a single node, use metric composites to specify a composite name, and the metrics to be evaluated for the composite.

Series/Field specific overrides will be evaluated for each metric, and the "worst" state of the composite is displayed.

The composite name is evaluated in the Diagram definition.

Diagram

For example, combining two series "A-series" and "B-series" into a single composite named "xyz", the following can be used:

When data is received for each series, the thresholds will be evaluated to find the "worst" threshold level, and the metrics and color value will be reflected in the "xyz" composite in the diagram.

Here are examples of the composite in action:

This diagram has "xyz" node, with "all green" threholds for both series A and B:

threshold0

This diagram has "xyz" node, where the A-series is green, but B-Series is yellow. The diagram node shows yellow, along with the value:

threshold1

This diagram has "xyz" node, where the A-series is green, but B-Series is red. The diagram node shows red, along with the value:

threshold2

This diagram has "xyz" node, where the A-series is yellow, and B-Series is green. The diagram node shows yellow, along with the value:

threshold3

Value or Range to Text Mapping

Value and range mapping can be used to replace numeric values by human readable text.
In the diagram the value of the matching series will be mapped to text:

Diagram

Roadmap

  • Custom character replacement
  • Implement the Hash Prefix Notation Processor??
    [New field mapping may replace this]
  • Remote Diagram Definition URL
  • [suggest something]

Development

See Here

Thanks!

Special thanks to the Mermaid contributors -
https://github.com/knsv/mermaid/graphs/contributors
https://knsv.github.io/mermaid/

and the D3 contributors -
https://github.com/d3/d3/graphs/contributors

And especially the Grafana contributors -
https://github.com/grafana/grafana/graphs/contributors
http://grafana.org/

Learn more

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].