How to log only one level to a FileHandler using python logging module.

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • fuzzylollipop

    #1

    How to log only one level to a FileHandler using python logging module.

    I want a FileHandler to only log a single level say for example
    logging.INFO, and nothing else.
    do I need to create a custom Handler for this or is this doable with
    some magic that is not documeneted somewhere?

  • zacherates@gmail.com

    #2
    Re: How to log only one level to a FileHandler using python logging module.

    Try looking into logging.Filters :


    An example:

    import logging

    class InfoFilter(logg ing.Filter):
    def filter(self, record):
    return record.levelno == 20

    if __name__ == "__main__":
    logger = logging.getLogg er()
    hdlr = logging.FileHan dler("blah.log" )
    hdlr.addFilter( InfoFilter())
    logger.addHandl er(hdlr)

    logger.exceptio n("ERROR WILL ROBINSON")

    Cheers,
    Aaron


    fuzzylollipop wrote:[color=blue]
    > I want a FileHandler to only log a single level say for example
    > logging.INFO, and nothing else.
    > do I need to create a custom Handler for this or is this doable with
    > some magic that is not documeneted somewhere?[/color]

    Comment

    Working...