Rotating File Handler Example

A snippet showing how to use RotatingFileHandler for logs.


# settings.py

from logging.handlers import RotatingFileHandler  # for reference
from pathlib import Path
BASE_DIR = Path(__file__).resolve().parent.parent

LOGGING = {
    "version": 1,
    "disable_existing_loggers": False,
    "formatters": {
        "line": {"format": "{asctime} | {levelname} | {message}", "style": "{"},
    },
    "handlers": {
        "rotating_file": {
            "class": "logging.handlers.RotatingFileHandler",
            "filename": BASE_DIR / "app.log",
            "maxBytes": 5 * 1024 * 1024,  # 5 MB
            "backupCount": 3,
            "formatter": "line",
        },
    },
    "root": {"handlers": ["rotating_file"], "level": "INFO"},
}
      
Explanation:
  • Use TimedRotatingFileHandler for daily/weekly rotation if preferred.
  • Logs rotate at ~5 MB, keeping 3 backups: app.log.1, app.log.2, app.log.3.
  • Category Logging
  • Total Views 949
  • Last Modified 06 July, 2026
  • Tags #logging #rotation #filehandler #debug
Previous snippet
Log to File Example
Never miss a story on Django.wiki

Subscribe for fresh tutorials, snippets, and updates.

By subscribing you agree to our Privacy Policy.