app log rotation with capped file size
This commit is contained in:
parent
60fdf4c82c
commit
4581603005
2 changed files with 12 additions and 4 deletions
|
|
@ -1,4 +1,5 @@
|
|||
import logging
|
||||
import logging.handlers
|
||||
import sys
|
||||
import re
|
||||
from pathlib import Path
|
||||
|
|
@ -74,7 +75,9 @@ def setup_logging(level: str = "INFO", log_file: Optional[str] = None) -> loggin
|
|||
log_path = Path(log_file)
|
||||
log_path.parent.mkdir(parents=True, exist_ok=True)
|
||||
|
||||
file_handler = logging.FileHandler(log_path, encoding='utf-8')
|
||||
file_handler = logging.handlers.RotatingFileHandler(
|
||||
log_path, encoding='utf-8', maxBytes=10*1024*1024, backupCount=3
|
||||
)
|
||||
file_handler.setLevel(log_level)
|
||||
|
||||
file_formatter = SafeFormatter(
|
||||
|
|
|
|||
|
|
@ -29,19 +29,24 @@ logger = get_logger("web_server")
|
|||
|
||||
# Dedicated source reuse logger — writes to logs/source_reuse.log
|
||||
import logging as _logging
|
||||
import logging.handlers as _logging_handlers
|
||||
source_reuse_logger = _logging.getLogger("source_reuse")
|
||||
source_reuse_logger.setLevel(_logging.DEBUG)
|
||||
if not source_reuse_logger.handlers:
|
||||
_sr_handler = _logging.FileHandler("logs/source_reuse.log", encoding="utf-8")
|
||||
_sr_handler = _logging_handlers.RotatingFileHandler(
|
||||
"logs/source_reuse.log", encoding="utf-8", maxBytes=5*1024*1024, backupCount=2
|
||||
)
|
||||
_sr_handler.setFormatter(_logging.Formatter("%(asctime)s - %(message)s", datefmt="%Y-%m-%d %H:%M:%S"))
|
||||
source_reuse_logger.addHandler(_sr_handler)
|
||||
source_reuse_logger.propagate = False
|
||||
|
||||
# Dedicated post-processing logger — writes to logs/post_processing.log
|
||||
# Dedicated post-processing logger (failures only) — writes to logs/post_processing.log
|
||||
pp_logger = _logging.getLogger("post_processing")
|
||||
pp_logger.setLevel(_logging.DEBUG)
|
||||
if not pp_logger.handlers:
|
||||
_pp_handler = _logging.FileHandler("logs/post_processing.log", encoding="utf-8")
|
||||
_pp_handler = _logging_handlers.RotatingFileHandler(
|
||||
"logs/post_processing.log", encoding="utf-8", maxBytes=5*1024*1024, backupCount=2
|
||||
)
|
||||
_pp_handler.setFormatter(_logging.Formatter("%(asctime)s - %(message)s", datefmt="%Y-%m-%d %H:%M:%S"))
|
||||
pp_logger.addHandler(_pp_handler)
|
||||
pp_logger.propagate = False
|
||||
|
|
|
|||
Loading…
Reference in a new issue