PingMon
← Zur API-Doku 🇬🇧 EN 🇩🇪 DE Kostenlos starten
Prometheus · Grafana · /metrics

PingMon in deinem Grafana

Der /metrics-Endpoint liefert deine Monitore als Prometheus-Gauges — Status, Antwortzeit, 24-h-Uptime und SSL-Restlaufzeit. Dein Prometheus scrapt, dein Grafana zeigt an. Verfügbar in Pro und Business.

1. API-Key bereitlegen

Im Dashboard unter Einstellungen → API erzeugst du deinen Konto-Key. Der /metrics-Export ist in Pro und Business enthalten — andere Tarife bekommen HTTP 402. Schnelltest direkt im Terminal:

curl -H "X-API-Key: <API-KEY>" https://pingmon.de/metrics

2. Prometheus scrapen lassen

Ein Job in deiner prometheus.yml genügt. Der Endpoint spricht das Prometheus-Exposition-Format (text/plain) und ist read-only — er kann nichts an deinem Konto ändern.

scrape_configs:
  - job_name: "pingmon"
    scheme: https
    metrics_path: /metrics
    scrape_interval: 60s
    static_configs:
      - targets: ["pingmon.de"]
    authorization:
      type: Bearer
      credentials: <API-KEY>

3. Dashboard importieren

Lade unser fertiges Dashboard herunter und importiere es in Grafana: Dashboards → New → Import → JSON-Datei hochladen. Beim Import wählst du deine Prometheus-Datenquelle aus — fertig.

Dashboard-JSON herunterladen

Die Datei landet in deinen Downloads. Öffnet dein System sie automatisch in einem Editor (macOS z. B. in Xcode): einfach schließen — in Grafana zählt nur das Hochladen der Datei.

Authentifizierung

Drei Wege, derselbe Key. Der Key gehört immer in den Header — als Query-Parameter wird er nicht akzeptiert.

VarianteSo geht's
X-API-Key: <API-KEY>Eigener Header — praktisch für curl und eigene Skripte
Authorization: Bearer <API-KEY>Standard für Prometheus — in der prometheus.yml als authorization-Block (siehe oben)
HTTP Basic AuthUsername egal (z. B. api), Passwort = API-Key — in der prometheus.yml als basic_auth

Falls dein Setup kein Bearer kann — dieselbe Stelle in der prometheus.yml, nur mit basic_auth:

    basic_auth:
      username: api
      password: <API-KEY>

Metrik-Referenz

Alle Metriken sind Gauges. Jede Zeitreihe trägt die Labels endpoint_id, endpoint (Monitor-Name) und client (Kundenname oder leer).

MetrikBedeutung
pingmon_endpoint_up1 = letzter Check ok, 0 = fehlgeschlagen
pingmon_response_secondsAntwortzeit des letzten Checks in Sekunden
pingmon_uptime_24h_ratioAnteil erfolgreicher Checks der letzten 24 h (0–1)
pingmon_ssl_days_remainingTage bis zum SSL-Zertifikatsablauf, negativ = abgelaufen — nur wenn der SSL-Check am Monitor aktiviert ist
pingmon_cert_expiry_timestampZertifikatsablauf als Unix-Timestamp in Sekunden — nur mit aktiviertem SSL-Check

Grafana Cloud

Grafana Cloud scrapt den Endpoint direkt — über Grafana Alloy oder die „Metrics Endpoint"-Integration. Als Authentifizierung wählst du Bearer-Token und trägst deinen API-Key ein. Ein eigener Prometheus ist dann nicht nötig.

Lieber JSON statt Prometheus?

Wenn du kein Prometheus betreiben willst: Die Grafana-Infinity-Datasource kann die REST-API v1 direkt konsumieren — Live-Status, Checks und Uptime als JSON. Alles dazu steht in der API-Doku.

Keine Wunder: Pausierte und gesperrte Monitore werden nicht exportiert. Pro Konto sind 30 Scrapes pro Minute frei — übliche Intervalle von 15–60 s passen locker. Die Werte zeigen den Stand des letzten Checks, kein Streaming.

Dashboard-JSON herunterladen Zur API-Doku Zu den API-Einstellungen