Grafana
Interagiere mit Grafana-Dashboards, Alarmen und Anmerkungen
Grafana ist eine führende Open-Source-Plattform für Monitoring, Observability und Visualisierung. Sie ermöglicht Benutzern, Daten aus verschiedenen Quellen abzufragen, zu visualisieren, zu überwachen und zu analysieren, was sie zu einem wesentlichen Werkzeug für Infrastruktur- und Anwendungsmonitoring macht.
Mit Grafana kannst du:
- Daten visualisieren: Dashboards erstellen und anpassen, um Metriken, Logs und Traces in Echtzeit anzuzeigen
- Gesundheit und Status überwachen: Den Zustand deiner Grafana-Instanz und verbundener Datenquellen überprüfen
- Alarme und Anmerkungen verwalten: Alarmregeln einrichten, Benachrichtigungen verwalten und Dashboards mit wichtigen Ereignissen versehen
- Inhalte organisieren: Dashboards und Datenquellen in Ordnern organisieren für besseres Zugriffsmanagement
In Cadense ermöglicht die Grafana-Integration deinen Agenten, direkt über die API mit deiner Grafana-Instanz zu interagieren, was Aktionen wie folgende ermöglicht:
- Überprüfung des Gesundheitsstatus von Grafana-Server, Datenbank und Datenquellen
- Abrufen, Auflisten und Verwalten von Dashboards, Alarmregeln, Anmerkungen, Datenquellen und Ordnern
- Automatisierung der Überwachung deiner Infrastruktur durch Integration von Grafana-Daten und Alarmen in deine Workflow-Automatisierungen
Diese Fähigkeiten ermöglichen es Cadense-Agenten, Systeme zu überwachen, proaktiv auf Alarme zu reagieren und die Zuverlässigkeit und Sichtbarkeit deiner Dienste zu gewährleisten – alles als Teil deiner automatisierten Workflows.
Nutzungsanleitung
Integriere Grafana in Workflows. Verwalte Dashboards, Alarme, Anmerkungen, Datenquellen, Ordner und überwache den Gesundheitsstatus.
Tools
grafana_get_dashboard
Ein Dashboard anhand seiner UID abrufen
Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service Account Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Multi-Org-Grafana-Instanzen |
dashboardUid | string | Ja | Die UID des abzurufenden Dashboards |
Ausgabe
| Parameter | Typ | Beschreibung |
|---|---|---|
dashboard | json | Das vollständige Dashboard-JSON-Objekt |
meta | json | Dashboard-Metadaten (Version, Berechtigungen usw.) |
grafana_list_dashboards
Suchen und auflisten aller Dashboards
Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service Account Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Multi-Org-Grafana-Instanzen |
query | string | Nein | Suchanfrage zum Filtern von Dashboards nach Titel |
tag | string | Nein | Nach Tag filtern (kommagetrennt für mehrere Tags) |
folderIds | string | Nein | Nach Ordner-IDs filtern (kommagetrennt) |
starred | boolean | Nein | Nur mit Stern markierte Dashboards zurückgeben |
limit | number | Nein | Maximale Anzahl der zurückzugebenden Dashboards |
Ausgabe
| Parameter | Typ | Beschreibung |
|---|---|---|
dashboards | array | Liste der Dashboard-Suchergebnisse |
grafana_create_dashboard
Ein neues Dashboard erstellen
Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service Account Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Multi-Org-Grafana-Instanzen |
title | string | Ja | Der Titel des neuen Dashboards |
folderUid | string | Nein | Die UID des Ordners, in dem das Dashboard erstellt werden soll |
tags | string | Nein | Kommagetrennte Liste von Tags |
timezone | string | Nein | Dashboard-Zeitzone (z.B. browser, utc) |
refresh | string | Nein | Auto-Aktualisierungsintervall (z.B. 5s, 1m, 5m) |
panels | string | Nein | JSON-Array von Panel-Konfigurationen |
overwrite | boolean | Nein | Vorhandenes Dashboard mit gleichem Titel überschreiben |
message | string | Nein | Commit-Nachricht für die Dashboard-Version |
Output
| Parameter | Type | Beschreibung |
|---|---|---|
id | number | Die numerische ID des erstellten Dashboards |
uid | string | Die UID des erstellten Dashboards |
url | string | Der URL-Pfad zum Dashboard |
status | string | Status der Operation (success) |
version | number | Die Versionsnummer des Dashboards |
slug | string | URL-freundlicher Slug des Dashboards |
grafana_update_dashboard
Aktualisiert ein bestehendes Dashboard. Ruft das aktuelle Dashboard ab und führt Ihre Änderungen zusammen.
Input
| Parameter | Type | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service Account Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Multi-Org-Grafana-Instanzen |
dashboardUid | string | Ja | Die UID des zu aktualisierenden Dashboards |
title | string | Nein | Neuer Titel für das Dashboard |
folderUid | string | Nein | Neue Ordner-UID, um das Dashboard zu verschieben |
tags | string | Nein | Kommagetrennte Liste neuer Tags |
timezone | string | Nein | Dashboard-Zeitzone (z.B. browser, utc) |
refresh | string | Nein | Auto-Refresh-Intervall (z.B. 5s, 1m, 5m) |
panels | string | Nein | JSON-Array von Panel-Konfigurationen |
overwrite | boolean | Nein | Überschreiben auch bei Versionskonflikten |
message | string | Nein | Commit-Nachricht für diese Version |
Output
| Parameter | Typ | Beschreibung |
|---|---|---|
id | number | Die numerische ID des aktualisierten Dashboards |
uid | string | Die UID des aktualisierten Dashboards |
url | string | Der URL-Pfad zum Dashboard |
status | string | Status der Operation (success) |
version | number | Die neue Versionsnummer des Dashboards |
slug | string | URL-freundlicher Slug des Dashboards |
grafana_delete_dashboard
Löschen eines Dashboards anhand seiner UID
Input
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service Account Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Multi-Org-Grafana-Instanzen |
dashboardUid | string | Ja | Die UID des zu löschenden Dashboards |
Output
| Parameter | Typ | Beschreibung |
|---|---|---|
title | string | Der Titel des gelöschten Dashboards |
message | string | Bestätigungsnachricht |
id | number | Die ID des gelöschten Dashboards |
grafana_list_alert_rules
Alle Alarmregeln in der Grafana-Instanz auflisten
Input
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service Account Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Multi-Org-Grafana-Instanzen |
Ausgabe
| Parameter | Typ | Beschreibung |
|---|---|---|
rules | array | Liste der Alarmregeln |
grafana_get_alert_rule
Eine bestimmte Alarmregel anhand ihrer UID abrufen
Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service Account Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Multi-Org-Grafana-Instanzen |
alertRuleUid | string | Ja | Die UID der abzurufenden Alarmregel |
Ausgabe
| Parameter | Typ | Beschreibung |
|---|---|---|
uid | string | Alarmregel-UID |
title | string | Alarmregel-Titel |
condition | string | Alarmbedingung |
data | json | Alarmregel-Abfragedaten |
folderUID | string | Übergeordnete Ordner-UID |
ruleGroup | string | Regelgruppenname |
noDataState | string | Status, wenn keine Daten zurückgegeben werden |
execErrState | string | Status bei Ausführungsfehler |
annotations | json | Alarmanmerkungen |
labels | json | Alarmlabels |
grafana_create_alert_rule
Eine neue Alarmregel erstellen
Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service Account Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Multi-Org-Grafana-Instanzen |
title | string | Ja | Der Titel der Alarmregel |
folderUid | string | Ja | Die UID des Ordners, in dem der Alarm erstellt werden soll |
ruleGroup | string | Ja | Der Name der Regelgruppe |
condition | string | Ja | Die refId der Abfrage oder des Ausdrucks, der als Alarmbedingung verwendet werden soll |
data | string | Ja | JSON-Array von Abfrage-/Ausdrucksdatenobjekten |
forDuration | string | Nein | Wartezeit vor dem Auslösen (z.B. 5m, 1h) |
noDataState | string | Nein | Status, wenn keine Daten zurückgegeben werden (NoData, Alerting, OK) |
execErrState | string | Nein | Status bei Ausführungsfehler (Alerting, OK) |
annotations | string | Nein | JSON-Objekt von Anmerkungen |
labels | string | Nein | JSON-Objekt von Labels |
Ausgabe
| Parameter | Typ | Beschreibung |
|---|---|---|
uid | string | Die UID der erstellten Alarmregel |
title | string | Titel der Alarmregel |
folderUID | string | UID des übergeordneten Ordners |
ruleGroup | string | Name der Regelgruppe |
grafana_update_alert_rule
Aktualisiert eine bestehende Alarmregel. Ruft die aktuelle Regel ab und führt Ihre Änderungen zusammen.
Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service-Account-Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com) |
organizationId | string | Nein | Organisations-ID für Multi-Org-Grafana-Instanzen |
alertRuleUid | string | Ja | Die UID der zu aktualisierenden Alarmregel |
title | string | Nein | Neuer Titel für die Alarmregel |
folderUid | string | Nein | Neue Ordner-UID, um den Alarm zu verschieben |
ruleGroup | string | Nein | Neuer Name der Regelgruppe |
condition | string | Nein | Neue Bedingung refId |
data | string | Nein | Neues JSON-Array von Abfrage-/Ausdrucksdatenobjekten |
forDuration | string | Nein | Wartezeit vor dem Auslösen (z.B. 5m, 1h) |
noDataState | string | Nein | Status, wenn keine Daten zurückgegeben werden (NoData, Alerting, OK) |
execErrState | string | Nein | Status bei Ausführungsfehler (Alerting, OK) |
annotations | string | Nein | JSON-Objekt von Anmerkungen |
labels | string | Nein | JSON-Objekt von Labels |
Ausgabe
| Parameter | Typ | Beschreibung |
|---|---|---|
uid | string | Die UID der aktualisierten Alarmregel |
title | string | Titel der Alarmregel |
folderUID | string | UID des übergeordneten Ordners |
ruleGroup | string | Name der Regelgruppe |
grafana_delete_alert_rule
Löschen einer Alarmregel anhand ihrer UID
Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service-Account-Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Multi-Org-Grafana-Instanzen |
alertRuleUid | string | Ja | Die UID der zu löschenden Alarmregel |
Ausgabe
| Parameter | Typ | Beschreibung |
|---|---|---|
message | string | Bestätigungsnachricht |
grafana_list_contact_points
Alle Alarmbenachrichtigungs-Kontaktpunkte auflisten
Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service-Account-Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Multi-Org-Grafana-Instanzen |
Ausgabe
| Parameter | Typ | Beschreibung |
|---|---|---|
contactPoints | array | Liste der Kontaktpunkte |
grafana_create_annotation
Eine Anmerkung auf einem Dashboard oder als globale Anmerkung erstellen
Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service Account Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Multi-Org-Grafana-Instanzen |
text | string | Ja | Der Textinhalt der Anmerkung |
tags | string | Nein | Kommagetrennte Liste von Tags |
dashboardUid | string | Ja | UID des Dashboards, zu dem die Anmerkung hinzugefügt werden soll |
panelId | number | Nein | ID des Panels, zu dem die Anmerkung hinzugefügt werden soll |
time | number | Nein | Startzeit in Epochenmillisekunden (standardmäßig jetzt) |
timeEnd | number | Nein | Endzeit in Epochenmillisekunden (für Bereichsanmerkungen) |
Ausgabe
| Parameter | Typ | Beschreibung |
|---|---|---|
id | number | Die ID der erstellten Anmerkung |
message | string | Bestätigungsnachricht |
grafana_list_annotations
Anmerkungen nach Zeitraum, Dashboard oder Tags abfragen
Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service Account Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Multi-Org-Grafana-Instanzen |
from | number | Nein | Startzeit in Epochenmillisekunden |
to | number | Nein | Endzeit in Epochenmillisekunden |
dashboardUid | string | Ja | Dashboard-UID, von der Anmerkungen abgefragt werden sollen |
panelId | number | Nein | Nach Panel-ID filtern |
tags | string | Nein | Kommagetrennte Liste von Tags zum Filtern |
type | string | Nein | Nach Typ filtern (alert oder annotation) |
limit | number | Nein | Maximale Anzahl der zurückzugebenden Anmerkungen |
Ausgabe
| Parameter | Typ | Beschreibung |
|---|---|---|
annotations | array | Liste der Anmerkungen |
grafana_update_annotation
Eine vorhandene Anmerkung aktualisieren
Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service-Account-Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Multi-Org-Grafana-Instanzen |
annotationId | number | Ja | Die ID der zu aktualisierenden Anmerkung |
text | string | Ja | Neuer Textinhalt für die Anmerkung |
tags | string | Nein | Kommagetrennte Liste neuer Tags |
time | number | Nein | Neue Startzeit in Epochenmillisekunden |
timeEnd | number | Nein | Neue Endzeit in Epochenmillisekunden |
Ausgabe
| Parameter | Typ | Beschreibung |
|---|---|---|
id | number | Die ID der aktualisierten Anmerkung |
message | string | Bestätigungsnachricht |
grafana_delete_annotation
Eine Anmerkung anhand ihrer ID löschen
Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service-Account-Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Multi-Org-Grafana-Instanzen |
annotationId | number | Ja | Die ID der zu löschenden Anmerkung |
Output
| Parameter | Type | Beschreibung |
|---|---|---|
message | string | Bestätigungsnachricht |
grafana_list_data_sources
Alle in Grafana konfigurierten Datenquellen auflisten
Input
| Parameter | Type | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service Account Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Multi-Org-Grafana-Instanzen |
Output
| Parameter | Type | Beschreibung |
|---|---|---|
dataSources | array | Liste der Datenquellen |
grafana_get_data_source
Eine Datenquelle anhand ihrer ID oder UID abrufen
Input
| Parameter | Type | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service Account Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Multi-Org-Grafana-Instanzen |
dataSourceId | string | Ja | Die ID oder UID der abzurufenden Datenquelle |
Output
| Parameter | Type | Beschreibung |
|---|---|---|
id | number | Datenquellen-ID |
uid | string | Datenquellen-UID |
name | string | Name der Datenquelle |
type | string | Typ der Datenquelle |
url | string | Verbindungs-URL der Datenquelle |
database | string | Datenbankname (falls zutreffend) |
isDefault | boolean | Ob dies die Standard-Datenquelle ist |
jsonData | json | Zusätzliche Konfiguration der Datenquelle |
grafana_list_folders
Alle Ordner in Grafana auflisten
Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service Account Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Grafana-Instanzen mit mehreren Organisationen |
limit | number | Nein | Maximale Anzahl der zurückzugebenden Ordner |
page | number | Nein | Seitennummer für Paginierung |
Ausgabe
| Parameter | Typ | Beschreibung |
|---|---|---|
folders | array | Liste der Ordner |
grafana_create_folder
Einen neuen Ordner in Grafana erstellen
Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
apiKey | string | Ja | Grafana Service Account Token |
baseUrl | string | Ja | Grafana-Instanz-URL (z.B. https://your-grafana.com\) |
organizationId | string | Nein | Organisations-ID für Grafana-Instanzen mit mehreren Organisationen |
title | string | Ja | Der Titel des neuen Ordners |
uid | string | Nein | Optionale UID für den Ordner (wird automatisch generiert, wenn nicht angegeben) |
Ausgabe
| Parameter | Type | Beschreibung |
|---|---|---|
id | number | Die numerische ID des erstellten Ordners |
uid | string | Die UID des erstellten Ordners |
title | string | Der Titel des erstellten Ordners |
url | string | Der URL-Pfad zum Ordner |
hasAcl | boolean | Ob der Ordner benutzerdefinierte ACL-Berechtigungen hat |
canSave | boolean | Ob der aktuelle Benutzer den Ordner speichern kann |
canEdit | boolean | Ob der aktuelle Benutzer den Ordner bearbeiten kann |
canAdmin | boolean | Ob der aktuelle Benutzer Administratorrechte für den Ordner hat |
canDelete | boolean | Ob der aktuelle Benutzer den Ordner löschen kann |
createdBy | string | Benutzername desjenigen, der den Ordner erstellt hat |
created | string | Zeitstempel, wann der Ordner erstellt wurde |
updatedBy | string | Benutzername desjenigen, der den Ordner zuletzt aktualisiert hat |
updated | string | Zeitstempel, wann der Ordner zuletzt aktualisiert wurde |
version | number | Versionsnummer des Ordners |