Re: How to export a logging level?

Discussion in 'Python' started by Vincent Vande Vyvre, Sep 25, 2012.

  1. Le 25/09/12 19:47, Jean-Michel Pichavant a écrit :
    > ----- Original Message -----
    >> In my application I import a module and I want to set the same
    >> logging
    >> level
    >> as the main app to this module.
    >>
    >> I've tried this code
    >>
    >> main.py
    >>
    >> import logging
    >> logger = logging.getLogger(__name__)
    >> lvl = logging.DEBUG
    >> LOG_FORMAT = "%(asctime)-6s %(levelname)s: %(name)s - %(message)s"
    >> logging.basicConfig(format=LOG_FORMAT, datefmt='%H:%M:%S', level=lvl)
    >>
    >> from mymodule.myfile import MyClass
    >>
    >> ...
    >> def load_myclass(self):
    >> lvl = logger.getEffectiveLevel()
    >> mc = MyClass(self, lvl)
    >>
    >>
    >> myfile.py
    >>
    >> import logging
    >> logger = logging.getLogger(__name__)
    >>
    >> class MyClass(object):
    >> def __init__(self, main, lvl):
    >> logger.setLevel(lvl)
    >>
    >> If I set the level to logging.DEBUG I can see all infos from the main
    >> but anything
    >> from my module.
    >>
    >> Thanks for your advice.
    >> --
    >> Vincent V.V.
    >> Oqapy <https://launchpad.net/oqapy> . Qarte
    >> <https://launchpad.net/qarte> . PaQager
    >> <https://launchpad.net/paqager>
    >> --
    >> http://mail.python.org/mailman/listinfo/python-list
    >>

    > Life is actually simpler, one rule to remember: you don't configure your loggers, ever. You let this worthless task to the user (in your case the main.py file or however import your module).
    >
    > In myfile.py, the only logging related lines are:
    >
    > import logging
    > logger = logging.getLogger(__name_)
    >
    > Then you just log. How the logs are processed, at which level, for which formatter, you don't care. The root logger will take care of that. Keep your main.py as it is and it should work.
    >
    > JM
    >
    >

    Oops, my fault, I've forgotten a line "logger.setLevel(logging.WARNING)"
    into my module.

    Thanks
    --
    Vincent V.V.
    Oqapy <https://launchpad.net/oqapy> . Qarte
    <https://launchpad.net/qarte> . PaQager <https://launchpad.net/paqager>
     
    Vincent Vande Vyvre, Sep 25, 2012
    #1
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. pabbu
    Replies:
    8
    Views:
    739
    Marc Boyer
    Nov 7, 2005
  2. Vincent Vande Vyvre

    How to export a logging level?

    Vincent Vande Vyvre, Sep 25, 2012, in forum: Python
    Replies:
    0
    Views:
    171
    Vincent Vande Vyvre
    Sep 25, 2012
  3. Peter Otten

    Re: How to export a logging level?

    Peter Otten, Sep 25, 2012, in forum: Python
    Replies:
    0
    Views:
    181
    Peter Otten
    Sep 25, 2012
  4. Vincent Vande Vyvre

    Re: How to export a logging level?

    Vincent Vande Vyvre, Sep 25, 2012, in forum: Python
    Replies:
    0
    Views:
    189
    Vincent Vande Vyvre
    Sep 25, 2012
  5. Jean-Michel Pichavant

    Re: How to export a logging level?

    Jean-Michel Pichavant, Sep 25, 2012, in forum: Python
    Replies:
    0
    Views:
    196
    Jean-Michel Pichavant
    Sep 25, 2012
Loading...

Share This Page