- deliver_many : log INFO « Emails remis : N/M — sujet=… » sur chaque lot (sans destinataire ni corps). Avant, un envoi réussi ne journalisait rien. - configure_logging : basicConfig(force=True) pour que les logs app.* sortent dans la sortie du conteneur même quand uvicorn configure le logging avant l'import de app.main. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017uUsRg7XzopkCPWimwg9ZM
20 lines
735 B
Python
20 lines
735 B
Python
import logging
|
|
|
|
from app.config import get_settings
|
|
|
|
# RGPD — RÈGLE STRICTE
|
|
# Ne jamais journaliser de données nominatives : pas de nom, prénom, email ni
|
|
# téléphone dans les logs. On journalise des identifiants (UUID/entier) et des
|
|
# codes. Toute nouvelle instruction de log doit respecter cette règle.
|
|
|
|
|
|
def configure_logging() -> None:
|
|
# `force=True` : on réinstalle le handler racine même si l'import de
|
|
# `app.main` se fait après la configuration de logging d'uvicorn/gunicorn,
|
|
# sinon les logs `app.*` n'apparaissent pas dans la sortie du conteneur.
|
|
logging.basicConfig(
|
|
level=get_settings().log_level,
|
|
format="%(asctime)s %(levelname)s %(name)s %(message)s",
|
|
force=True,
|
|
)
|