alliance-boreale/docs/decisions/adr/ADR-OBS-001 — Loki comme backend de logs de référence.md
Dan Allaire ef98fd8a3f Refonte
2026-03-09 18:23:06 -04:00

105 lines
No EOL
4.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# ADR-OBS-001 — Loki comme backend de logs de référence
**Version :** 1.0
**Date :** 25 janvier 2026
**Cycle de Réalignement Boréal :** CRB-3
**Statut :** Adopté (référence vivante)
**Portée :** Fédération (C3), Pivot (C5), Membres affiliés, Tenants (C6C8)
---
## 1. Contexte
LAlliance Boréale requiert une capacité de **journalisation** (logs) commune, interopérable et auditable, compatible avec :
- La séparation **Fédération / Pivot / Tenants**
- Le principe **adjacent-only** (aucun flux ne saute une couche)
- La **portabilité** des tenants (export/rejeu possible, preuves de fonctionnement)
Les logs sont un intrant critique pour :
- la résilience opérationnelle (diagnostic, incident, détection)
- la conformité (preuves, audits, traçabilité)
- la gouvernance (ΔLog et boucles de rétroaction)
---
## 2. Décision
**Grafana Loki** est adopté comme **backend de logs de référence** pour larchitecture de référence Alliance Boréale.
Cela signifie :
1. **Référence technologique**
- Loki est limplémentation de référence pour lingestion, le stockage, la rétention et la requête de logs.
1. **Référence dintégration**
- Les flux logs des tenants (C6C8) et des services pivot (C5) transitent via le **Pivot (C5)** vers la **capacité observabilité fédérée (C3)**, conformément à ladjacent-only.
1. **Référence dagent**
- **Grafana Alloy** est lagent de collecte/expédition recommandé par défaut.
- Les alternatives sont tolérées uniquement si elles respectent le contrat de la politique `POL-OBS-LOG-001`.
---
## 3. Alternatives considérées
### A) Stack “full-text” (indexation complète)
- Avantage : recherche textuelle plus directe.
- Inconvénients : coût/complexité plus élevés, risques de dérives (indexation incontrôlée, PII), difficile à rendre “facile aux petits”.
### B) “Un Loki par membre” (décentralisé)
- Avantage : simplicité locale, autonomie.
- Inconvénients : dispersion des pratiques, consolidation fédérale plus difficile, effort dopération multiplié.
### C) “Loki fédéré + ingestion via Pivot” (modèle retenu)
- Avantages : simplicité pour les petits (un seul endpoint), cohérence fédérale, contrôle daccès et preuves centralisées, isolation par tenant.
- Inconvénient : nécessite un pivot/gateway bien cadré (mais cest déjà un invariant C5).
---
## 4. Conséquences (ce que cela change)
### 4.1 Pour les membres affiliés (petits inclus)
- Ils nont pas lobligation dopérer Loki localement.
- Ils doivent être **compatibles Loki** : capacité dexpédier des logs via lendpoint standard (TLS, auth, labels conformes).
### 4.2 Pour la Fédération (C3)
- Opération dun Loki “référence” (au minimum en mode simple) + Grafana de consultation.
- Mise en place des politiques : rétention, quotas, RBAC, preuves auditables.
### 4.3 Pour le Pivot (C5)
- Le pivot devient **le point dentrée unique** pour lingestion et la consultation (proxy/gateway).
- Le pivot applique lauthentification, la médiation (multi-tenant masquée) et les contrôles de conformité (labels/quotas).
---
## 5. Décision opérationnelle de démarrage (MVP)
- **Mode de déploiement Loki** : démarrage en mode simple (priorité à lopérabilité).
- **Chemin dingestion** : agents (C6/C5) → Gateway Pivot (C5) → Loki (C3).
- **Chemin de consultation** : utilisateurs → Grafana (C3) via Gateway Pivot (C5) + SSO (Keycloak).
- **Multi-tenant** : géré par le Pivot (C5). Les petits nont pas à manipuler lisolation.
---
## 6. Critères dacceptation
La décision est considérée “en place” lorsque :
1. Un membre affilié peut expédier des logs avec Alloy vers lendpoint pivot, sans configuration complexe.
2. Les labels minimaux requis sont présents et conformes (cardinalité maîtrisée).
3. Un utilisateur autorisé peut consulter les logs dans Grafana via SSO.
4. La rétention par défaut est appliquée et vérifiable.
5. Les preuves minimales daudit (configuration + traces dexécution + exemple de requêtes) sont archivées.
---