What is Python's default logging formatter?

Solution 1:

The default format is located here which is:

BASIC_FORMAT = "%(levelname)s:%(name)s:%(message)s"  

The Format code will tell you how you can customize it. Here is one example on how you can customize it.

import sys
import logging

logging.basicConfig(
    level=logging.DEBUG,
    format="[%(asctime)s] %(levelname)s [%(name)s.%(funcName)s:%(lineno)d] %(message)s",
    datefmt="%d/%b/%Y %H:%M:%S",
    stream=sys.stdout)

logging.info("HEY")

Which results in:

[26/May/2013 06:41:40] INFO [root.<module>:1] HEY

Solution 2:

import logging
print(logging.BASIC_FORMAT)

Old thread but this comes up first in my google search results for the query "python logging default format", so I thought I should add my answer.

Also some comments asked about how one could have come to discover this on their own. Here is a natural thing to do:

import logging
print(dir(logging))

BASIC_FORMAT is in there, in fact it is the first entry in the result in my case.