Konfigurationsreferenz

Wippy wird über .wippy.yaml-Dateien konfiguriert. Alle Optionen haben sinnvolle Standardwerte.

Log-Manager

Steuert das Runtime-Log-Routing. Konsolenausgabe wird über CLI-Flags (-v, -c, -s) konfiguriert.

Feld Typ Standard Beschreibung
propagate_downstream bool true Logs an Konsolen-/Dateiausgabe senden
stream_to_events bool false Logs für programmatischen Zugriff zum Event-Bus veröffentlichen
min_level int -1 Minimales Level: -1=debug, 0=info, 1=warn, 2=error
logmanager:
  propagate_downstream: true
  stream_to_events: false
  min_level: 0

Siehe: Logger-Modul

Profiler

Go pprof HTTP-Server für CPU-/Speicher-Profiling. Mit -p Flag oder Konfiguration aktivieren.

Feld Typ Standard Beschreibung
enabled bool false Profiler-Server starten
address string localhost:6060 Adresse zum Lauschen
read_timeout duration 15s HTTP Read-Timeout
write_timeout duration 15s HTTP Write-Timeout
idle_timeout duration 60s Keep-Alive-Timeout
profiler:
  enabled: true
  address: "localhost:6060"

Zugriff unter http://localhost:6060/debug/pprof/

Sicherheit

Globales Sicherheitsverhalten. Individuelle Richtlinien werden als security.policy-Einträge definiert.

Feld Typ Standard Beschreibung
strict_mode bool false Zugriff verweigern wenn Sicherheitskontext unvollständig
security:
  strict_mode: true

Siehe: Sicherheitssystem, Sicherheitsmodul

Registry

Eintragsspeicherung und Versionshistorie. Die Registry enthält alle Konfigurationseinträge.

Feld Typ Standard Beschreibung
enable_history bool true Eintragsversionen verfolgen
history_type string memory Speicher: memory, sqlite, nil
history_path string .wippy/registry.db SQLite-Dateipfad
registry:
  history_type: sqlite
  history_path: /var/lib/wippy/registry.db

Siehe: Registry-Konzept, Registry-Modul

Relay

Nachrichtenrouting zwischen Prozessen über Knoten hinweg.

Feld Typ Standard Beschreibung
node_name string local Bezeichner für diesen Relay-Knoten
relay:
  node_name: worker-1

Siehe: Prozessmodell

Supervisor

Dienst-Lebenszyklus-Verwaltung. Steuert wie überwachte Einträge starten/stoppen.

Feld Typ Standard Beschreibung
host.buffer_size int 1024 Nachrichtenwarteschlangen-Kapazität
host.worker_count int NumCPU Nebenläufige Worker
supervisor:
  host:
    buffer_size: 2048
    worker_count: 32

Siehe: Supervision-Anleitung

Funktionen

Funktionsausführungs-Host. Führt function.lua-Einträge aus.

Feld Typ Standard Beschreibung
host.buffer_size int 1024 Task-Warteschlangen-Kapazität
host.worker_count int NumCPU Nebenläufige Worker
functions:
  host:
    buffer_size: 2048
    worker_count: 32

Siehe: Funktionen-Konzept, Funcs-Modul

Lua-Runtime

Lua-VM-Caching und Expression-Auswertung.

Feld Typ Standard Beschreibung
proto_cache_size int 60000 Kompilierter Prototype-Cache
main_cache_size int 10000 Main-Chunk-Cache
expr.cache_enabled bool true Kompilierte Expressions cachen
expr.capacity int 5000 Expression-Cache-Größe
json.cache_enabled bool true JSON-Schemas cachen
json.capacity int 1000 JSON-Cache-Größe
lua:
  proto_cache_size: 60000
  expr:
    cache_enabled: true
    capacity: 5000

Siehe: Lua-Übersicht

Finder

Registry-Such-Caching. Wird intern für Eintrags-Lookups verwendet.

Feld Typ Standard Beschreibung
query_cache_size int 1000 Gecachte Abfrageergebnisse
regex_cache_size int 100 Kompilierte Regex-Muster
finder:
  query_cache_size: 2000

OpenTelemetry

Verteiltes Tracing und Metrik-Export über OTLP.

Feld Typ Standard Beschreibung
enabled bool false OTEL aktivieren
endpoint string localhost:4318 OTLP-Endpunkt
protocol string http/protobuf Protokoll: grpc, http/protobuf
service_name string wippy Dienst-Bezeichner
sample_rate float 1.0 Trace-Sampling (0.0-1.0)
traces_enabled bool false Traces exportieren
metrics_enabled bool false Metriken exportieren
http.enabled bool true HTTP-Anfragen tracen
process.enabled bool true Prozess-Lebenszyklus tracen
interceptor.enabled bool false Funktionsaufrufe tracen
otel:
  enabled: true
  endpoint: "http://jaeger:4318"
  traces_enabled: true
  process:
    trace_lifecycle: true

Siehe: Observability-Anleitung

Shutdown

Verhalten beim kontrollierten Herunterfahren.

Feld Typ Standard Beschreibung
timeout duration 30s Maximale Wartezeit für Komponenten zum Stoppen
shutdown:
  timeout: 60s

Metriken

Interner Metriken-Sammlungspuffer.

Feld Typ Standard Beschreibung
buffer.size int 10000 Metriken-Puffer-Kapazität
interceptor.enabled bool false Funktionsaufrufe automatisch verfolgen
metrics:
  buffer:
    size: 20000
  interceptor:
    enabled: true

Siehe: Metriken-Modul, Observability-Anleitung

Prometheus

Prometheus-Metriken-Endpunkt.

Feld Typ Standard Beschreibung
enabled bool false Metriken-Server starten
address string localhost:9090 Adresse zum Lauschen
prometheus:
  enabled: true
  address: "0.0.0.0:9090"

Stellt /metrics-Endpunkt für Prometheus-Scraping bereit.

Siehe: Observability-Anleitung

Cluster

Multi-Node-Clustering mit Gossip-Discovery.

Feld Typ Standard Beschreibung
enabled bool false Clustering aktivieren
name string hostname Knoten-Bezeichner
internode.bind_addr string 0.0.0.0 Inter-Node-Bind-Adresse
internode.bind_port int 0 Port (0=auto 7950-7959)
membership.bind_port int 7946 Gossip-Port
membership.join_addrs string Seed-Knoten (kommasepariert)
membership.secret_key string Verschlüsselungsschlüssel (base64)
membership.secret_file string Schlüsseldatei-Pfad
membership.advertise_addr string Öffentliche Adresse für NAT
cluster:
  enabled: true
  name: node-1
  membership:
    bind_port: 7946
    join_addrs: "10.0.0.1:7946,10.0.0.2:7946"
    secret_file: /etc/wippy/cluster.key

Siehe: Cluster-Anleitung

Umgebungsvariablen

Variable Beschreibung
GOMEMLIMIT Speicherlimit (überschreibt --memory-limit Flag)

Siehe auch