Start / Docs

Dokumentation

Wie DiffMon bei Monitoring, Alerts, Sicherheit und API-Integration funktioniert.

Smart Schema Validation

Wie DiffMon API-Diffs in Schema- und Value-Änderungen mit Severity, Fingerprints und Troubleshooting einordnet.

Smart Schema Validation

Smart Schema Validation (SSV) hilft Ihnen, echten API Contract Drift von normalem Value Churn zu trennen.

Planverfügbarkeit: Pro und höher.

Statt nur zu sagen "der Hash hat sich geändert", klassifiziert DiffMon JSON-Änderungen in:

  • schema_change (Shape-/Type-Drift)
  • value_change (Inhalt geändert, Shape stabil)
  • mixed (beides)

Wann SSV läuft

SSV läuft automatisch, wenn alle folgenden Bedingungen erfüllt sind:

  1. Der Target Type des Monitors ist api.
  2. Der Fetch Mode ist content.
  3. Der Response Body lässt sich als JSON parsen.
  4. JSON-Select-/Ignore-Regeln werden zuerst angewendet.

Wenn diese Bedingungen nicht erfüllt sind, fällt DiffMon auf legacy Hash Diffing zurück.

Was Nutzer in der App sehen

In Monitor History und Incidents sehen Sie:

  • Classification Badge (schema_change, value_change, mixed, unchanged)
  • Schema-Hash-Übergang (fromSchemaHash -> toSchemaHash)
  • Zähler für Schema-/Value-Änderungen
  • am stärksten veränderte JSON Paths
  • Severity pro Änderung (critical, high, medium, info)

Das beschleunigt die Triage:

  • priorisieren Sie schema_change und mixed
  • behandeln Sie value_change als niedrigeres Risiko, sofern der Bereich nicht business-kritisch ist

Severity-Modell

SSV gibt für jeden Change Record eine Severity aus:

KategorieOperationSeverity
schemareplacecritical
schemaremovehigh
schemaaddmedium
valuereplaceinfo
valueadd / removeinfo

Webhook-Verhalten

Für diff.detected enthalten Webhook-Payloads:

  • diff_summary mit classification, schema_changes, value_changes
  • changes[] mit path, category, op, severity
  • diff_fingerprint für Dedupe und Grouping

Damit sind stabiles Downstream-Routing und Automation möglich, ohne Diff-Logik neu zu implementieren.

Best Practices für die Konfiguration

  1. Lassen Sie API-Monitore im content Mode, wenn Sie Contract Drift erkennen möchten.
  2. Fokussieren Sie das Monitoring mit selectJsonPaths auf eine stabile Teilmenge, zum Beispiel nur data.items.
  3. Verwenden Sie ignoreJsonPaths für bekannte volatile Felder wie Timestamps, IDs oder rotierende Tokens.
  4. Prüfen Sie die meistveränderten Paths, bevor Sie Ignore-Regeln ausweiten.

Troubleshooting

Häufige Monitor-Fehler und Warnungen:

CodeBedeutungAktion
SELECT_RULES_INVALID_JSON_PATHUngültige Syntax für Select-JSON-PathFormat von selectJsonPaths korrigieren
IGNORE_RULES_INVALID_JSON_PATHUngültige Syntax für Ignore-JSON-PathFormat von ignoreJsonPaths korrigieren
SELECT_RULES_INVALID_JSONResponse ist kein valides JSON, obwohl Select-Regeln konfiguriert sindResponse-Format des Endpoints prüfen
IGNORE_RULES_INVALID_JSONResponse ist kein valides JSON, obwohl Ignore-Regeln konfiguriert sindResponse-Format des Endpoints prüfen
SELECT_OR_IGNORE_RULES_INVALID_JSONResponse ist kein valides JSON, obwohl beide Regelsätze konfiguriert sindResponse-Format des Endpoints prüfen
UNEXPECTED_MIMEResponse-Format passt nicht zum erwarteten Typ und der Body ist nicht als JSON parsebarUpstream-Response/Content-Type prüfen
mime_mismatch_json (warning)Body wurde als JSON geparst, aber Content-Type ist kein JSONProvider um Korrektur des Content-Type-Headers bitten
schema_analysis_failed (warning)Schema-Extraktion fehlgeschlagen; Hash Diff ist weiterhin verfügbarPayload-Shape und Logs prüfen, dann erneut versuchen

Zugehörige Dokumentation