简体   繁体   中英

Python 3: How to log warnings and errors to log file?

Say I have a While loop that runs forever(it does system monitoring).

It has three conditions,

While True:

    if something1
        Everything is OK!
    if something2
        Warning
    if something3
        Error

The first, I don't want anything for. The second, I'd like to add a warning to a logfile. For the third, the same - except it's an error.

Since these are in a while loop, can I still just add a logger to something2 and something3? Do I start out with the below?

import logging logger = logging.getLogger()

But how do I add warning and error to each respective if statement so it writes to the same logfile?

try doing it like this

import logging
logging.basicConfig(filename='example.log',level=logging.DEBUG)
logging.debug('This message should go to the log file')
logging.info('So should this')
logging.warning('And this, too')

Use logging module:

import logging
logging.basicConfig(filename='logfile.log', level=logging.DEBUG, 
                    format='%(asctime)s %(levelname)s %(name)s %(message)s')
logger=logging.getLogger(__name__)
...    

try:
    1/0
except ZeroDivisionError as err:
    logger.error(err)
...

Also you can write logging.warning and logging.info , as @crai noted.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM