From 0195d5e46780fb44969b101a265f0a7e90ea78aa Mon Sep 17 00:00:00 2001 From: fengbohan <1953356163@qq.com> Date: Thu, 17 Aug 2023 11:08:58 +0800 Subject: [PATCH] add_func: config log --- .gitignore | 1 + gen_word.py | 17 ++++++++++++----- log_config.yaml | 30 ++++++++++++++++++++++++++++++ 3 files changed, 43 insertions(+), 5 deletions(-) create mode 100644 log_config.yaml diff --git a/.gitignore b/.gitignore index f459667..00b097a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ *.doc *.tmp +*.log diff --git a/gen_word.py b/gen_word.py index b65b0df..62b2463 100644 --- a/gen_word.py +++ b/gen_word.py @@ -9,6 +9,7 @@ from win32com.client import Dispatch, constants import os import sys import ruamel.yaml as yaml +import logging.config class WEEK_REPORT: file_name = "" @@ -21,16 +22,17 @@ class WEEK_REPORT: def __init__(self): with open("config.yaml", "r", encoding="UTF-8") as f1: data = yaml.safe_load(f1) - print("config.yaml: {}".format(data)) + logger.debug("config.yaml: {}".format(data)) self.user_name = data["user_name"] self.get_name() def get_name(self): self.file_name = "{}WW{}周工作报告_{}.doc".format(time.strftime('%Y'), time.strftime('%W'), self.user_name) self.pre_file_name = "{}WW{}周工作报告_{}.doc".format(time.strftime('%Y'), str(int(time.strftime('%W'))-1), self.user_name) - print("pre file name: {}; \nnew file name: {};".format(self.pre_file_name, self.file_name)) + logger.info("pre file name: {}".format(self.pre_file_name)) + logger.info("new file name: {};".format(self.file_name)) if(os.path.isfile(self.file_name)==True): - print("{} is already exist.".format(self.file_name)) + logger.info("{} is already exist.".format(self.file_name)) self.open_file() sys.exit(1) @@ -75,7 +77,7 @@ class WEEK_REPORT: start_time = end_time - datetime.timedelta(days=4) # return start_time.strftime("%Y-%m-%d"), end_time.strftime("%Y-%m-%d") self.pre_str = start_time.strftime("%#m.%#d") + "~" + end_time.strftime("%#m.%#d") - print("pre_str: {}".format(self.pre_str)) + logger.debug("pre_str: {}".format(self.pre_str)) def get_current_week(self,date=None): if date: @@ -90,9 +92,14 @@ class WEEK_REPORT: friday += one_day # return datetime.datetime.strftime(monday, "%Y-%m-%d"), datetime.datetime.strftime(friday, "%Y-%m-%d") self.str = datetime.datetime.strftime(monday, "%#m.%#d") + "~" + datetime.datetime.strftime(friday, "%#m.%#d") - print("str: {}".format(self.str)) + logger.debug("str: {}".format(self.str)) if __name__ == "__main__": + with open("log_config.yaml", 'r') as f: + config = yaml.safe_load(f.read()) + logging.config.dictConfig(config) + logger = logging.getLogger("file_logger") + week_report = WEEK_REPORT() week_report.copy_file() week_report.update_file() \ No newline at end of file diff --git a/log_config.yaml b/log_config.yaml new file mode 100644 index 0000000..190ca23 --- /dev/null +++ b/log_config.yaml @@ -0,0 +1,30 @@ +version: 1 +formatters: + simple: + format: '%(asctime)s - %(pathname)s - %(lineno)d -%(levelname)s: %(message)s' + +handlers: + console: + class: logging.StreamHandler + level: DEBUG + formatter: simple + file: + class: logging.FileHandler + filename: "run.log" + mode: 'w' + encoding: utf-8 + level: DEBUG + formatter: simple + +loggers: + console_logger: + handlers: [console] + level: DEBUG + propagate: false + file_logger: + handlers: [console, file] + level: DEBUG + propagate: false +root: + level: DEBUG + handlers: [console, file] \ No newline at end of file