Grafana
Grafana is the leading open-source platform for monitoring and observability. ArcadeDB provides two integration paths: a dedicated Grafana plugin (recommended) and a fallback via the built-in PostgreSQL data source.
ArcadeDB Grafana Plugin (Recommended)
The ArcadeDB Grafana plugin provides a native integration with dedicated query editors, time series visual builder, and graph visualization via Grafana’s Node Graph panel.
Features:
-
Time Series mode - visual query builder with auto-discovered types, fields, tags, and aggregation functions (SUM, AVG, MIN, MAX, COUNT)
-
SQL mode - ArcadeDB SQL with macro expansion (
$timeFrom,$timeTo,$timeFilter(col),$interval) -
Cypher mode - OpenCypher queries with optional Node Graph visualization
-
Gremlin mode - Apache Gremlin traversals with optional Node Graph visualization
-
Alerting - full Grafana alerting support via the Go backend
-
Template variables - dashboard variables populated from ArcadeDB queries
Installation:
grafana-cli plugins install arcadedb-arcadedb-datasource
Or build from source:
git clone https://github.com/ArcadeData/arcadedb-grafana-datasource.git
cd arcadedb-grafana-datasource
mage -v build:linux
For self-hosted Grafana with unsigned plugins, add to grafana.ini:
[plugins]
allow_loading_unsigned_plugins = arcadedb-arcadedb-datasource
Configuration:
-
Go to Connections > Data Sources > Add data source and search for ArcadeDB.
-
Set the URL to your ArcadeDB HTTP API (e.g.,
http://localhost:2480). -
Enable Basic Auth and enter your ArcadeDB credentials.
-
Set the Database name in the ArcadeDB section.
-
Click Save & Test.
Time Series query example:
-
Select Time Series mode.
-
Choose a type (e.g.,
cpu_metrics), fields (e.g.,usage), and optional tag filters. -
Add an aggregation: AVG on
usagewith a bucket interval or leave it to auto-calculate.
SQL query example:
SELECT ts, temperature FROM weather
WHERE $__timeFilter(ts)
ORDER BY ts
Cypher query with Node Graph:
Enable the Node Graph toggle, then:
MATCH (p:Person)-[r:FRIEND_OF]->(f:Person)
RETURN p, r, f LIMIT 100
The result renders as an interactive graph in Grafana’s Node Graph panel.
PostgreSQL Data Source (Fallback)
If you cannot install the ArcadeDB plugin, use Grafana’s built-in PostgreSQL data source with ArcadeDB’s PostgreSQL wire protocol.
-
Go to Connections > Data Sources > Add data source and select PostgreSQL.
-
Set Host to
localhost:5432, enter the Database name and credentials. -
Set TLS/SSL Mode to
disable. -
Click Save & Test.
In panels, switch to Code mode and write SQL:
SELECT name, age FROM Person LIMIT 100
Use the {cypher} prefix for Cypher queries:
{cypher}MATCH (p:Person) RETURN p.name, p.age LIMIT 100
| The PostgreSQL fallback does not support the time series visual builder, Node Graph visualization, ArcadeDB-specific macros, or alerting optimizations. Use the dedicated plugin for the full experience. |
Grafana Time Series Endpoints
ArcadeDB also provides native Grafana DataFrame-compatible HTTP endpoints for time series data.
See Time Series for full documentation of the /grafana/health, /grafana/metadata, and /grafana/query endpoints, as well as the PromQL-compatible endpoints.