ВМ1: реализован сбор логов

This commit is contained in:
mi
2026-09-07 12:46:45 +03:00
parent 44db38f6fe
commit 85df788f2d
42 changed files with 1669 additions and 310 deletions
@@ -22,8 +22,14 @@
| Keycloak | `keycloak` |
| `sms-service` | `sms-service` |
| `sms-worker` | `sms-worker` |
| delivery worker | `delivery-worker` |
| safety recovery worker | `safety-recovery-worker` |
| quarantine cleanup worker | `cleanup-worker` |
| notification expiration worker | `notification-expire-worker` |
| notification draft cleanup worker | `notification-draft-cleanup-worker` |
| Redis DB0/DB1 | `redis` |
| local Collector | `otel-collector` |
| host telemetry agent | `otel-host-collector` |
SMS-метрики и алерты детализированы в [`module-11-idgtl-sms.md`](module-11-idgtl-sms.md); имена зарегистрированы в arch-07 §4.
@@ -36,6 +42,22 @@ SMS-метрики и алерты детализированы в [`module-11-i
- export в SigNoz `192.168.0.5:4317`; hostname collector ВМ2 не используется;
- pipeline, processors, limits, `otel-queue-init` и fail-open — arch-07 §3, §13, §14.
Python-сервисы экспортируют structured logs через OTLP Logs SDK в Compose
Collector. JSON stdout сохраняется только как bounded аварийный buffer и не
собирается повторно.
Отдельный hardened host agent собирает по allow-list:
- Docker `json-file` для nginx, Keycloak и Redis;
- journal units `docker`, `han-stack`, `han-secrets`, Docker firewall,
certbot и fail2ban;
- UFW log, если он включён на host.
Host agent не имеет доступа к Docker socket, исключает собственные логи и
Compose Collector, хранит offsets/queue в `/var/lib/han-otel/host-collector`
и экспортирует напрямую в тот же SigNoz. Platform events без активного span
не получают искусственные trace IDs и ищутся по host/service/time window.
Scrape targets ВМ1 (кроме самого Collector): Keycloak management metrics, Redis exporter приложения, nginx exporter, сервисные `/metrics` `api-backend` и `bitrix-local-app`, если они не идут OTLP.
## 4. Instrumentation