How to write to a file, using the logging Python module?

后端 未结 9 2066
天涯浪人
天涯浪人 2020-11-27 10:34

How can I use the logging module in Python to write to a file? Every time I try to use it, it just prints out the message.

9条回答
  •  隐瞒了意图╮
    2020-11-27 10:59

    Here is two examples, one print the logs (stdout) the other write the logs to a file:

    import logging
    import sys
    
    logger = logging.getLogger()
    logger.setLevel(logging.INFO)
    formatter = logging.Formatter('%(asctime)s | %(levelname)s | %(message)s')
    
    stdout_handler = logging.StreamHandler(sys.stdout)
    stdout_handler.setLevel(logging.DEBUG)
    stdout_handler.setFormatter(formatter)
    
    file_handler = logging.FileHandler('logs.log')
    file_handler.setLevel(logging.DEBUG)
    file_handler.setFormatter(formatter)
    
    
    logger.addHandler(file_handler)
    logger.addHandler(stdout_handler)
    

    With this example, all logs will be printed and also be written to a file named logs.log

提交回复
热议问题