MetriBeacon
Menü
Deutsch

Eigene Monitoring-Daten senden

Senden Sie eigene Werte über HTTPS mit den Kennungen und Schlüsseln Ihres Monitors.

Auf dieser Seite

Bereiten Sie Ihren Monitor vor

  1. Legen Sie Monitor und Gauge-Reihe sowie einen Schlüssel für diesen Monitor an. Speichern Sie ihn in einer privaten, nur für Sie lesbaren Datei (0600).
  2. Kopieren Sie die Reihen-UUID. Erzeugen Sie eine Batch-UUID und eine Punkt-UUID pro Messung. Nutzen Sie ihre tatsächliche UTC-Zeit.
  3. Behalten Sie Kennungen, Zeitpunkte und Werte bei Wiederholungen unverändert.

Senden Sie einen Messwert

Ersetzen Sie SERIES_UUID unten durch Ihre Reihenkennung. Das Beispiel erzeugt neue Kennungen und die aktuelle Zeit. Es liest den Schlüssel privat und hält ihn aus curl-Befehlsargumenten heraus.

shell
export METRIBEACON_SERIES="SERIES_UUID"
python3 - <<'PY' > batch.json
import datetime, json, os, uuid
print(json.dumps({"batch_id": str(uuid.uuid4()), "points": [{
    "id": str(uuid.uuid4()), "series_id": os.environ["METRIBEACON_SERIES"],
    "measured_at": datetime.datetime.now(datetime.timezone.utc).isoformat(),
    "value": 42.5}]}))
PY
METRIBEACON_KEY=$(cat "$HOME/.config/metribeacon/device.key")
printf 'header = "Authorization: Bearer %s"\n' "$METRIBEACON_KEY" | \
  curl --config - --fail-with-body --request POST \
  https://metribeacon.com/api/v1/ingest/points \
  --header "Content-Type: application/json" --data-binary @batch.json
unset METRIBEACON_KEY

Prüfen Sie die Antwort

accepted zählt neu gespeicherte Werte, duplicates identische bereits empfangene Werte. Ein älterer Wert kann in der Historie erscheinen, ohne einen neueren aktuellen Wert zu ersetzen. Die Antwort unten ist ein Beispiel, kein Ergebnis einer echten Anfrage.

json
{"batch_id":"11111111-1111-4111-8111-111111111111", "accepted":1, "duplicates":0}

Anfragegrenzen

Ein Batch darf bis zu 1.000 Einträge und 256 KiB enthalten, vor und nach gzip-Entpackung. Zahlenmessungen derselben Reihe müssen mindestens eine Sekunde auseinanderliegen. Werte dürfen bis zu 24 Stunden alt oder zwei Minuten voraus sein. Zusätzlich gelten Ihre Kontolimits.

Wiederholen Sie sicher

Warten Sie bei 429 oder vorübergehendem 503 gemäß Retry-After und wiederholen Sie denselben vorbereiteten Batch. Beheben Sie bei 401/403 Schlüssel- oder Zugriffsprobleme, verkleinern Sie bei 413 den Inhalt und korrigieren Sie bei 422 die Daten. Nutzen Sie code zur Automatisierung und request_id für Hilfe.

Zustände und Ereignisse

Nutzen Sie /api/v1/ingest/states für Boolean- oder Enum-Werte und /api/v1/ingest/events für kurze Meldungen. Sie teilen Ihr Datenkontingent und haben zusätzlich ein kleineres Ereigniskontingent. Die API-Referenz enthält vollständige Felder und Beispiele.