NameError: global name 'logger' is not defined NameError: global name 'logger' is not defined json json

NameError: global name 'logger' is not defined


The example you link to has:

import logginglogging.basicConfig(level=logging.INFO)logger = logging.getLogger(__name__) #<<<<<<<<<<<<<<<<<<<<

you missed the logger definition.

You can either put a self.logger = logging.getLogger(__name__) in your Generic.__init__() function, or define a global logger right after the import as in the example.


This below should be added to your code

logger=Nonedef setup():   logger.debug('put some text')   return 0def main():   global logger   logger = logging.getLogger('give_some_logger_name')   logger.setLevel(logging.DEBUG)   ret = setup()


In your class you are using logger but you have not defined it.Either set logger like:

    logger = logging.getLogger(__name__)

or use logging instead:

    logging.info('Generic on file {} starts at {}'.format(file_path , time.time()))