1.5 KiB
1.5 KiB
ksp-logging-lib
ksp-logging-lib est la façade commune de logging/tracing runtime de Khadhroony Solana Project.
Responsabilités
La crate possède :
- les cinq niveaux KSP
error,warn,info,debugettrace; - les macros d'événements et de spans qui préservent le callsite du consommateur ;
LoggingSettingset les settings console/fichier indépendants de Config ;- l'installation unique du subscriber global ;
- le hot reload via
reinitializesans second subscriber global ; - le takeover des logs : les targets externes sont silencieux par défaut ;
- les sorties console et fichier non bloquantes ;
- les
WorkerGuard, compteurs de lignes abandonnées, rotation fichier et stripping ANSI ; - l'instrumentation de scopes synchrones et de
Futureasync.
Frontières
Une crate KSP comportementale qui journalise son activité dépend de ksp-logging-lib et n'utilise pas directement tracing, tracing-subscriber ou tracing-appender.
Les événements utiles issus d'une dépendance externe ne sont pas renommés : la crate KSP propriétaire de l'opération réémet explicitement l'information utile sous son propre target KSP.
ksp-logging-lib ne dépend pas de ksp-config-lib. Config pourra construire un LoggingSettings puis appeler initialize ou reinitialize.