I copied example from real python, and added two more rows to log also info & debug level messages. However, they never get logged. Do you know what is wrong?
import logging
# Create a custom logger
logger = logging.getLogger(__name__)
# Create handlers
c_handler = logging.StreamHandler()
f_handler = logging.FileHandler('file.log')
c_handler.setLevel(logging.INFO)
f_handler.setLevel(logging.DEBUG)
# Create formatters and add it to handlers
c_format = logging.Formatter('%(name)s - %(levelname)s - %(message)s')
f_format = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
c_handler.setFormatter(c_format)
f_handler.setFormatter(f_format)
# Add handlers to the logger
logger.addHandler(c_handler)
logger.addHandler(f_handler)
logger.warning('This is a warning')
logger.error('This is an error')
logger.info('This is info')
logger.debug('Just debugging')
This results to a log file with following content, i.e. info and debug messages are missing.
2021-12-07 20:40:16,301 - __main__ - WARNING - This is a warning
2021-12-07 20:40:16,301 - __main__ - ERROR - This is an error