Zum Inhalt springen

Bereich Szenarien

Der Bereich Szenarien ist, wo Sie Ihre Szenarien zusammenstellen und bedienen. Auf der Seite haben Sie die Liste der Szenarien; in der Mitte vier Ansichten des aktiven Szenarios.

  • Neues Szenario öffnet den Editor: Name + die Micros, die es bilden.
  • Bearbeiten (obere Leiste) kehrt zu diesem Editor zurück, um seine Zusammensetzung zu ändern.
  • Löschen (Elementmenü auf der Seite) entfernt das Szenario; fragt nach Bestätigung.
  • Karten — eine Karte pro Micro mit seinem Status, Port und Modus (Nativ/Container- Umschalter).
  • Tabelle — dieselbe Information in Zeilen: Status, Start, Endpoints und Modus. Die Umschalter und Links jeder Zeile bleiben inline.
  • Graph — der Wer-ruft-wen-Aufrufgraph, mit der Farbe jeder Kante gemäß ihrer Auflösung (local, Cloud oder Mock). Man kann vergrößern, verkleinern und an die Ansicht anpassen.

Alle drei bieten dasselbe Aktionsmenü zu einem Micro: es öffnet sich über das »⋮« der Karte oder der Zeile und mit einem Rechtsklick auf eine der drei (im Graphen auf den Knoten). Es enthält die Konfiguration öffnen, die Logs dieses Micros ansehen, ihn allein neu starten, solange das Szenario läuft, jeden veröffentlichten Endpoint öffnen (API, Swagger, Health), seinen Repository-Ordner öffnen und den effektiven Startbefehl kopieren.

  • Abhängigkeiten — der local/cloud/mock-Wähler pro Abhängigkeit, mit dem Hinweis „erfordert Verbindung“, wenn etwas auf die Cloud zeigt. Siehe Abhängigkeiten.

Über die obere Leiste:

  • ▶ Starten / ■ Stoppen — ein einziger Knopf, der je nach Zustand startet oder stoppt. Er startet die Infra, löst die Ports auf, schreibt URLs um und startet jeden Micro; beim Stoppen stoppt er Micros, Container und Infra.
  • Bereinigen — beendet verwaiste native Prozesse und entfernt zurückgebliebene aseptic-*-Container. Nützlich, wenn etwas hängen geblieben ist.
  • Daten befüllen (Szenario-Menü in der Seitenleiste, Szenario gestartet) — führt die post-migrate-Schritte seiner Micros (zum Beispiel einen Seed) nach der ersten Migration aus. Erscheint nur, wenn ein Micro solche Schritte deklariert.

Debuggen (Aktionsmenü des Micros, in jeder der drei Ansichten) lässt ihn mit offenem Debugger auf 127.0.0.1 starten; läuft das Szenario, wird nur dieser Micro neu gestartet. Es wird im Szenario gespeichert, wie der Modus, und reist weder beim Export noch bei der Veröffentlichung im Team-Katalog mit.

  • Spring Boot und Quarkus — JDWP, auf einem eigenen Port, der umgelegt wird, wenn er belegt ist (standardmäßig 5005).
  • Node — der Inspector, im Prozess, der die App ausliefert, nicht in npm (standardmäßig 9229).
  • .NET — Anhängen per PID: der Prozess, der auf dem Port des Micros lauscht.
  • Python — debugpy (standardmäßig 5678): Das Micro startet über ihn, also muss sein Befehl mit python beginnen oder mit einem Server, der sich auch als Modul starten lässt (uvicorn, flask, gunicorn, fastapi, hypercorn). debugpy installierst du selbst in der .venv des Repos (pip install debugpy).
  • Go — Delve (standardmäßig 2345), mit einem Befehl go run <Paket>: Er baut ohne Optimierungen, damit die Variablen sichtbar sind, und das Binary landet im Temp-Ordner, nicht im Repo. Delve installierst du selbst (go install github.com/go-delve/delve/cmd/dlv@latest).

Fehlt debugpy oder Delve oder hat der Befehl keine dieser Formen, sagt Debuggen das, statt sich einzuschalten, und die Prüfung des Szenarios warnt mit dem Befehl zum Installieren.

Nur im nativen Modus. Die Karte zeigt den Port (oder die PID) des Debuggers, und Debugger-Konfiguration kopieren legt den Eintrag für die launch.json von VS Code in die Zwischenablage. Im Terminal: aseptic debug <micro> on|off; ohne Argument sagt es, wie man sich anhängt, auch aus IntelliJ.

Jeder Start eines Szenarios wird bis zum Stoppen als Lauf gespeichert: wann, wie lange, wie er endete (erfolgreich, mit abgestürzten Micros oder nie hochgefahren), der letzte Zustand jedes Micros mit seinen Fehlern und die Aufrufe, die die Mocks bedient haben. Laufverlauf (Szenario-Menü in der Seitenleiste) zeigt sie mit ihren Logs, filterbar nach Micro und nach Fehlern: Dort schaut man nach, wenn „es gestern noch ging“ und nichts mehr läuft.

Die letzten 20 bleiben erhalten; Anheften verhindert, dass einer entfernt wird. Im Terminal: aseptic runs, aseptic runs logs <id>.

Die Gesundheitszusammenfassung des Szenarios (keine Vorfälle / startet / mit Fehlern) ist in der oberen Leiste und öffnet den Tab Status des Docks. Jeder Micro durchläuft die Zustände Stopped → Starting → Healthy (oder Unhealthy / Crashed). Siehe Zustände eines Micros.

Der Export/Import eines vollständigen Szenarios erfolgt über das Seitenmenü. Siehe Ein Szenario teilen.