В программе MAIN_SETUP.py я импортирую otherMod2
MAIN_SETUP.py
import logging
import otherMod2
# ----------------------------------------------------------------------
def main():
"""
The main entry point of the application
"""
logger = logging.getLogger("exampleApp")
logger.setLevel(logging.INFO)
# create the logging file handler
fh = logging.FileHandler("new_snake.log")
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fh.setFormatter(formatter)
# add handler to logger object
logger.addHandler(fh)
logger.info("Program started")
result = otherMod2.add(7, 8)
logger.info("Done!")
if __name__ == "__main__":
main()
otherMod2.py
import logging
module_logger = logging.getLogger("exampleApp.otherMod2")
# ----------------------------------------------------------------------
def add(x, y):
""""""
logger = logging.getLogger("exampleApp.otherMod2.add")
logger.info("added %s and %s to get %s" % (x, y, x + y))
return x + y
Если я запускаю программу (MAIN_SETUP.py), файл new_snake.log создан, следующие данные записываются в файл
2018-12-03 16:21:29,772 - exampleApp - INFO - Program started
2018-12-03 16:21:29,772 - exampleApp.otherMod2.add - INFO - added 7 and 8 to get 15
2018-12-03 16:21:29,772 - exampleApp - INFO - Done!
Вопрос 1:
В otherMod2.py у нас есть ниже logger, он просто определен ине используется .Можем ли мы удалить это?Будет ли это иметь какое-либо влияние, если мы удалим его.
module_logger = logging.getLogger("exampleApp.otherMod2")
Вопрос 2:
Нет никакого обработчика, определенного для нижеописанного логгера в otherMod2.py, но он все еще записывается в файл new_snake.log,как это возможно
logger = logging.getLogger("exampleApp.otherMod2.add")
logger.info("added %s and %s to get %s" % (x, y, x + y))