Visualisierer fuer Umgebungs-Konfigurationsunterschiede

Vergleicht JSON-, YAML-, TOML- und ENV-Konfigurationen zwischen Umgebungen und hebt Drift, fehlende Keys und Bereinigungshinweise hervor.

Fuegen Sie mehrere Konfigurationsbloecke in "Konfigurationspaket" ein und trennen Sie sie mit Ueberschriften im Format === umgebung (format) ===.

Beispiele fuer Ueberschriften:

  • === dev (json) ===
  • === staging (yaml) ===
  • === prod (toml) ===
  • === worker (env) ===

Unterstuetzte Formate:

  • JSON: ein normales JSON-Objekt wie {"PORT":3000,"feature":{"beta":true}}
  • YAML: eingerueckte Schluessel/Wert-Paare wie PORT: 3000 und feature:
    beta: true
  • TOML: key = value Syntax mit Tabellen wie [feature]
  • ENV: dotenv-Zeilen wie PORT=3000 und API_URL=https://api.example.com

Hinweise:

  • Geben Sie mindestens zwei Bloecke an, damit Umgebungen verglichen werden koennen.
  • Verwenden Sie moeglichst dieselben logischen Keys in allen Umgebungen.
  • Bei aktivierter Geheimwert-Maskierung werden Keys wie token, password und secret automatisch verborgen.
  • Verschachtelte Objekte und Arrays werden im Bericht zu Pfaden wie database.host oder services[0].url abgeflacht.

Beispielergebnisse

1 Beispiele

Feature-Flags zwischen Dev, Staging und Prod vergleichen

Hebt Keys hervor, die nur in einer Umgebung existieren, und findet Drift vor dem Release.

Configuration diff report
Eingabeparameter anzeigen
{ "configBundle": "=== dev (yaml) ===\nFEATURE_X: true\nAPI_URL: https://dev.example.com\n\n=== prod (env) ===\nFEATURE_X=false\nAPI_URL=https://api.example.com", "maskSecrets": true, "showTree": true }

Wichtige Fakten

Kategorie
Entwicklung & Web
Eingabetypen
textarea, checkbox
Ausgabetyp
html
Sample-Abdeckung
4
API verfügbar
Yes

Überblick

Der Visualisierer für Umgebungs-Konfigurationsunterschiede ist ein leistungsstarkes Entwickler-Tool, das JSON-, YAML-, TOML- und ENV-Dateien über verschiedene Umgebungen hinweg vergleicht. Es identifiziert Konfigurations-Drifts, fehlende Schlüssel und veraltete Werte zwischen Dev-, Staging- und Produktionsumgebungen. Mit integrierter Geheimwert-Maskierung und einer übersichtlichen Baumansicht hilft es Teams, fehlerhafte Deployments durch inkonsistente Konfigurationen zu vermeiden.

Wann verwenden

  • Vor einem Produktions-Release, um sicherzustellen, dass alle neuen Umgebungsvariablen aus der Staging-Umgebung übernommen wurden.
  • Bei der Fehlersuche, wenn eine Anwendung lokal funktioniert, aber in der Cloud aufgrund abweichender Konfigurationen abstürzt.
  • Beim Refactoring von Microservices, um veraltete oder ungenutzte Konfigurationsschlüssel über mehrere Umgebungen hinweg zu bereinigen.

So funktioniert es

  • Fügen Sie Ihre Konfigurationsblöcke in das Textfeld ein und trennen Sie diese mit Überschriften wie === dev (yaml) === und === prod (env) ===.
  • Aktivieren Sie bei Bedarf Optionen wie 'Geheimwerte maskieren' oder 'Groß-/Kleinschreibung ignorieren', um die Analyse anzupassen.
  • Das Tool flacht verschachtelte JSON- oder YAML-Strukturen zu Punkt-Pfaden ab und vergleicht die Schlüssel logisch miteinander.
  • Sie erhalten einen detaillierten HTML-Bericht, der Abweichungen, fehlende Werte und Bereinigungsvorschläge in einer übersichtlichen Baumansicht hervorhebt.

Anwendungsfälle

Abgleich von Feature-Flags zwischen Staging- und Produktionsumgebungen vor einem großen Release.
Migration von Konfigurationen, beispielsweise beim Wechsel von .env-Dateien zu strukturierten YAML-Dateien in Kubernetes.
Audit von Umgebungsvariablen, um fehlende Datenbank-Verbindungsstrings oder API-Endpunkte in neuen Umgebungen aufzudecken.

Beispiele

1. Feature-Flags zwischen Dev und Prod vergleichen

DevOps Engineer
Hintergrund
Ein neues Feature wurde in der Entwicklungsumgebung getestet und soll nun in Produktion gehen.
Problem
Es muss sichergestellt werden, dass alle neuen Feature-Flags in der Produktionskonfiguration vorhanden sind, ohne dass sensible Daten offengelegt werden.
Verwendung
Fügen Sie die Dev-YAML und Prod-ENV in das Konfigurationspaket ein und aktivieren Sie 'Geheimwerte maskieren'.
Beispielkonfiguration
=== dev (yaml) ===
FEATURE_X: true
API_URL: https://dev.example.com
DB_PASS: secret123

=== prod (env) ===
FEATURE_X=false
API_URL=https://api.example.com
DB_PASS=prodSecret
Ergebnis
Der HTML-Bericht zeigt, dass FEATURE_X in beiden Umgebungen existiert (mit unterschiedlichen Werten), und maskiert die DB_PASS-Werte automatisch.

2. Lokale JSON-Config mit Cloud-ENV abgleichen

Backend-Entwickler
Hintergrund
Die lokale Entwicklung nutzt eine config.json, während das Cloud-Deployment Umgebungsvariablen (.env) verwendet.
Problem
Die Anwendung stürzt in der Cloud ab, weil ein neu hinzugefügter Konfigurationsschlüssel in der .env-Datei fehlt.
Verwendung
Kopieren Sie die JSON-Datei unter === local (json) === und die .env-Datei unter === cloud (env) === in das Tool. Aktivieren Sie 'Groß-/Kleinschreibung ignorieren'.
Beispielkonfiguration
=== local (json) ===
{
  "port": 3000,
  "database": {
    "host": "localhost",
    "timeout": 5000
  }
}

=== cloud (env) ===
PORT=8080
DATABASE_HOST=db.internal
Ergebnis
Das Tool flacht das JSON ab (database.timeout) und zeigt sofort, dass dieser Schlüssel in der Cloud-Umgebung fehlt. Durch 'Groß-/Kleinschreibung ignorieren' werden port und PORT korrekt zugeordnet.

Mit Samples testen

json, yaml, barcode

Verwandte Hubs

FAQ

Welche Dateiformate werden für den Vergleich unterstützt?

Das Tool unterstützt JSON, YAML, TOML und ENV (dotenv). Sie können sogar verschiedene Formate miteinander vergleichen, z.B. YAML in Staging und ENV in Produktion.

Wie trenne ich die verschiedenen Umgebungen im Eingabefeld?

Verwenden Sie Überschriften im Format === umgebungsname (format) ===, zum Beispiel === dev (json) === gefolgt von der eigentlichen Konfiguration.

Sind meine Passwörter und API-Keys im Bericht sichtbar?

Nein, wenn die Option 'Geheimwerte maskieren' aktiviert ist, werden Werte von Schlüsseln wie 'token', 'password' oder 'secret' automatisch verborgen.

Wie geht das Tool mit verschachtelten Objekten in JSON oder YAML um?

Verschachtelte Objekte und Arrays werden zu flachen Pfaden (z.B. database.host oder services[0].url) umgewandelt, um einen präzisen Vergleich zu ermöglichen.

Kann ich Groß- und Kleinschreibung bei den Schlüsseln ignorieren?

Ja, aktivieren Sie einfach die Option 'Groß-/Kleinschreibung ignorieren', um Schlüssel wie 'PORT' und 'port' als identisch zu behandeln.

API-Dokumentation

Request-Endpunkt

POST /de/api/tools/environment-config-diff-visualizer

Request-Parameter

Parameter-Name Typ Erforderlich Beschreibung
configBundle textarea Ja -
maskSecrets checkbox Nein -
ignoreCase checkbox Nein -
showTree checkbox Nein -

Antwortformat

{
  "result": "
Processed HTML content
", "error": "Error message (optional)", "message": "Notification message (optional)", "metadata": { "key": "value" } }
HTML: HTML

MCP-Dokumentation

Fügen Sie dieses Tool zu Ihrer MCP-Server-Konfiguration hinzu:

{
  "mcpServers": {
    "elysiatools-environment-config-diff-visualizer": {
      "name": "environment-config-diff-visualizer",
      "description": "Vergleicht JSON-, YAML-, TOML- und ENV-Konfigurationen zwischen Umgebungen und hebt Drift, fehlende Keys und Bereinigungshinweise hervor.",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=environment-config-diff-visualizer",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

Sie können mehrere Tools verketten, z.B.: `https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`, maximal 20 Tools.

Wenn Sie auf Probleme stoßen, kontaktieren Sie uns bitte bei [email protected]