I have a simple project structure - my main module calls two other modules residing within the same directory. I followed the instructions per this answer to set up my test.
My code is as follows:
Main module:
# log_test.py
import logging
import imported_1
import imported_2
def main():
    logger = logging.getLogger(__name__)
    logging.basicConfig(filename="test.log", format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
    logger.setLevel(logging.DEBUG)
    logger.debug("This is a debug message")
    logger.info("For your info")
    logger.warning("This is a warning message")
    logger.error("This is an error message")
    logger.critical("This is a critical message")
    imported_1.one_fn(5, 6)
    imported_2.two_fn(10, 20)
if __name__ == '__main__':
    main()
The imported modules - imported_1.py
# imported_1.py
import logging
logger = logging.getLogger(__name__)
def one_fn(x, y):
    print(f"Logging function one with {x} and {y}")
    logger.info(f"Logging function one with {x} and {y}")
And imported_2.py
# imported_2.py
import logging
logger = logging.getLogger(__name__)
def two_fn(x, y):
    print(f"Logging function two with {x} and {y}")
    logger.info(f"Logging function one with {x} and {y}")
The generated log file test.log only contains entries from the main log_test.py module. The imported modules are not logged here:
2019-12-21 18:26:41,351 - __main__ - DEBUG - This is a debug message
2019-12-21 18:26:41,351 - __main__ - INFO - For your info
2019-12-21 18:26:41,351 - __main__ - WARNING - This is a warning message
2019-12-21 18:26:41,351 - __main__ - ERROR - This is an error message
I am looking for log messages from the imported modules to show up in the same log file as specified by basicConfig. What am I doing wrong here?
 
     
    