Centralizovaná observability vrstva pro celý BlackCat stack. Cílem je sjednotit logování, metriky (Prometheus, OTLP), tracing, alerting a real-time event streaming (SSE/Webhooks) tak, aby každé repo (auth, database, messaging, crypto…) implementovalo stejné standardy.
- Unified SDK –
ObservabilityManagerposkytuje jednoduché API (metrics(),events(),traces()) pro publikační a sběrné moduly. - Multi-export – podporujeme Prometheus, OpenTelemetry/OTLP, Loki, Kafka + webhooky, volitelně „firehose“ pro SecOps.
- Sensitive data guard – integrace s
blackcat-crypto(masking + envelope) ablackcat-authpolicy (tenant/quota). - Dev tooling – CLI
bin/observabilitys příkazymetrics:tail,events:stream,alerts:test.
blackcat-observability/
├── src/
│ ├── ObservabilityManager.php
│ ├── Metrics/
│ ├── Events/
│ └── Exporter/
├── docs/ROADMAP.md
├── README.md
├── composer.json
└── tests/
blackcat-auth→ posílá audit události přesAuthEventHook+ SSE feed (/events/stream).blackcat-messaging→ připojuje se do event pipeline (lag metrics, consumer status).blackcat-database/blackcat-database-sync→ metriky replikace, drift detection, CDC throughput.blackcat-crypto→ wrap queue metrics a KMS health state.
composer install
php bin/observability help
# tail posledních 10 událostí / snapshot metrik
php bin/observability events:tail
php bin/observability metrics:snapshot$obs = ObservabilityManager::boot();
$obs->events()->publish('auth.login', ['tenant' => 'eu-1', 'result' => 'success']);
$obs->metrics()->counter('auth_logins_total')->inc(['result' => 'success']);