24 lines
1.1 KiB
Markdown
24 lines
1.1 KiB
Markdown
<!-- file: docs/development/003-TRACING_AND_DIAGNOSTICS.md -->
|
||
<!-- version: 1 -->
|
||
|
||
# Tracing et diagnostics
|
||
|
||
## Objectif
|
||
|
||
Le projet utilise `tracing` comme façade structurée commune pour les événements de diagnostic Rust. Les applications choisissent le subscriber adapté à leur distribution ; les librairies émettent des événements sans imposer une destination globale.
|
||
|
||
## Socle initial
|
||
|
||
`crates/common/game-logging-lib` regroupe l’initialisation réutilisable. La première implémentation fournit :
|
||
|
||
- un subscriber console formaté ;
|
||
- une écriture non bloquante via `tracing-appender` ;
|
||
- un guard dont la durée de vie protège le flush des événements ;
|
||
- un subscriber local destiné aux tests.
|
||
|
||
Les runners Desktop initialisent ce socle. Les futures intégrations Android pourront adapter la destination aux contraintes Logcat/plateforme sans modifier les crates jeu.
|
||
|
||
## Évolution
|
||
|
||
Les filtres par target/niveau, fichiers rotatifs, configuration utilisateur, traces Android et éventuelle télémétrie distante seront ajoutés uniquement lorsqu’un besoin concret les justifie.
|