Salta ai contenuti

Sezione Scenari

La sezione Scenari è dove componi e operi i tuoi scenari. Sul lato hai l’elenco degli scenari; al centro, quattro viste dello scenario attivo.

  • Nuovo scenario apre l’editor: nome + i micro che lo compongono.
  • Modifica (barra superiore) torna a quell’editor per cambiarne la composizione.
  • Elimina (menu dell’elemento sul lato) rimuove lo scenario; chiede conferma.
  • Schede — una scheda per micro con il suo stato, la porta e la modalità (interruttore nativo/container).
  • Tabella — la stessa informazione in righe: stato, avvio, endpoint e modalità. Gli interruttori e i link di ogni riga restano inline.
  • Grafo — il grafo delle chiamate chi-chiama-chi, con il colore di ogni arco a seconda della sua risoluzione (local, cloud o mock). Si può ingrandire, rimpicciolire e adattare alla vista.

Tutte e tre offrono lo stesso menu di azioni su un micro: si apre dal «⋮» della scheda o della riga, e con il clic destro su una qualsiasi delle tre (nel grafo, sul nodo). Porta aprire la configurazione, vedere i log di quel micro, riavviare solo lui con lo scenario in marcia, aprire ogni endpoint pubblicato (API, Swagger, health), aprire la cartella del suo repository e copiare il comando effettivo con cui si avvia.

  • Dipendenze — il selettore local/cloud/mock per dipendenza, con l’avviso «richiede connessione» se qualcosa punta al cloud. Vedi Dipendenze.

Dalla barra superiore:

  • ▶ Avvia / ■ Ferma — un unico pulsante che avvia o ferma a seconda dello stato. Avvia l’infra, risolve le porte, riscrive gli URL e avvia ogni micro; alla fermata, ferma micro, container e infra.
  • Pulisci — termina i processi nativi orfani ed elimina i container aseptic-* residui. Utile se qualcosa è rimasto bloccato.
  • Popola i dati (menu dello scenario nel pannello laterale, con lo scenario avviato) — esegue i passi post-migrate dei suoi micro (per esempio, un seed) dopo la prima migrazione. Compare solo se qualche micro li dichiara.

Esegui il debug (menu delle azioni del micro, in una qualsiasi delle tre viste) lo fa avviare con il debugger aperto su 127.0.0.1; se lo scenario è avviato, riavvia solo quel micro. Si salva nello scenario, come la modalità, e non viaggia quando lo esporti o lo pubblichi nel catalogo del team.

  • Spring Boot e Quarkus — JDWP, su una porta propria che viene rimappata se occupata (5005 di default).
  • Node — l’inspector, nel processo che serve l’app e non in npm (9229 di default).
  • .NET — aggancio per PID: quello del processo in ascolto sulla porta del micro.
  • Python — debugpy (5678 di default): il micro si avvia attraverso di lui, quindi il suo comando deve iniziare con python o con un server che si lancia anche come modulo (uvicorn, flask, gunicorn, fastapi, hypercorn). debugpy lo installi tu nel .venv del repo (pip install debugpy).
  • Go — Delve (2345 di default), con un comando go run <pacchetto>: compila senza ottimizzazioni perché si vedano le variabili, e il binario va nella cartella temporanea, non nel repo. Delve lo installi tu (go install github.com/go-delve/delve/cmd/dlv@latest).

Se mancano debugpy o Delve, o il comando non ha una di queste forme, Esegui il debug lo dice invece di attivarsi, e il controllo dello scenario avvisa con il comando per installarlo.

Solo in modalità nativa. La scheda mostra la porta (o il PID) del debugger, e Copia la configurazione del debugger mette negli appunti la voce per il launch.json di VS Code. Dal terminale: aseptic debug <micro> on|off; senza argomento dice come agganciarsi, anche da IntelliJ.

Ogni volta che avvii uno scenario resta salvata un’esecuzione fino a quando lo fermi: quando, quanto è durata, com’è finita (riuscita, con micro caduti o non si è mai avviata), l’ultimo stato di ogni micro con i suoi errori e le chiamate servite dai mock. Cronologia delle esecuzioni (menu dello scenario nel pannello laterale) le mostra con i loro log, filtrabili per micro e per errori: è lì che guardare quando «ieri funzionava» e non c’è più niente avviato.

Si conservano le ultime 20; Fissa evita che una venga eliminata. Dal terminale: aseptic runs, aseptic runs logs <id>.

Il riepilogo di salute dello scenario (nessun problema / in avvio / con errori) è nella barra superiore e apre la scheda Stato del dock. Ogni micro passa per gli stati Stopped → Starting → Healthy (o Unhealthy / Crashed). Vedi Stati di un micro.

Esportare/importare uno scenario completo si fa dal menu laterale. Vedi Condividere uno scenario.