0Pricing
Python Academy · Lesson

Handlers, Formatters, and Filters

Route log output to files, streams, and custom destinations.

Handlers Route Log Records

A handler sends log records to a destination: console, file, HTTP endpoint, etc. One logger can have multiple handlers.

import logging

logger = logging.getLogger("myapp")
logger.setLevel(logging.DEBUG)

sh = logging.StreamHandler()
logger.addHandler(sh)

logger.info("Goes to console")

StreamHandler

StreamHandler writes to a stream (default sys.stderr). Pass sys.stdout for stdout output.

import logging, sys

logger = logging.getLogger("out")
handler = logging.StreamHandler(sys.stdout)
logger.addHandler(handler)
logger.warning("printed to stdout")

All lessons in this course

  1. The logging Module Basics
  2. Handlers, Formatters, and Filters
  3. Structured Logging
  4. Debugging with pdb
← Back to Python Academy