我想用python将所有日志附加到一个文件中

我想用python将所有日志附加到一个文件中,python,Python,我有在当前目录下写日志的代码。它工作正常,它将来自不同类的所有日志写入一个文件中 现在我想在特定目录(例如:Logs目录)中编写代码 我正在其他xyz类中创建对象,如下所示 try: logger = PyLog().get_logger(self.__class__.__name__, getattr(PyLog, "log_file"), logging.INFO) except Attrib

我有在当前目录下写日志的代码。它工作正常,它将来自不同类的所有日志写入一个文件中

现在我想在特定目录(例如:Logs目录)中编写代码

我正在其他xyz类中创建对象,如下所示

   try:
       logger = PyLog().get_logger(self.__class__.__name__,
                                     getattr(PyLog, "log_file"), logging.INFO)
   except AttributeError:
       logger = PyLog().get_logger(self.__class__.__name__,
                                     os.path.join(os.getcwd(),
                                                  "%s.log" % self.__class__.__name__),
                                     logging.INFO)

在一些abc课上也是这样

    try:
       logger = PyLog().get_logger(self.__class__.__name__,
                                        getattr(PyLog, "log_file"), logging.INFO)
      except AttributeError:
          logger = PyLog().get_logger(self.__class__.__name__,
                                        os.path.join(os.getcwd(),
                                                     "%s.log" % self.__class__.__name__),
                                        logging.INFO)

用于在当前工作目录的xyz日志文件中写入xyz类和abc类的日志

现在我想在logs文件夹中写入所有日志,所以我更改了下面的一些行,但它开始为每个类(如xyz.log、abc.log)编写日志文件

       try:
           logger = PyLog().get_logger(self.__class__.__name__,
                                       getattr(PyLog, "log_file"), logging.INFO)
       except AttributeError:
           if not os.path.exists(os.getcwd() + "\\Logs"):
               os.mkdir(os.getcwd() + "\\Logs")

           log_dir = os.getcwd() + "\\Logs"
           logger = PyLog().get_logger(self.__class__.__name__,
                                       os.path.join(log_dir,
                                                    "%s.log" % self.__class__.__name__),
                                       logging.INFO)

请有人帮我修一下。它应该将所有日志写入一个文件。

我找到了解决方案。我们必须设置set_attr=True,然后它将所有日志写入一个文件

获取日志记录器(自身、模块、日志文件、日志级别=无、设置属性=真)

例:


我找到了解决办法。我们必须设置set_attr=True,然后它将所有日志写入一个文件

获取日志记录器(自身、模块、日志文件、日志级别=无、设置属性=真)

例:

       try:
           logger = PyLog().get_logger(self.__class__.__name__,
                                       getattr(PyLog, "log_file"), logging.INFO)
       except AttributeError:
           if not os.path.exists(os.getcwd() + "\\Logs"):
               os.mkdir(os.getcwd() + "\\Logs")

           log_dir = os.getcwd() + "\\Logs"
           logger = PyLog().get_logger(self.__class__.__name__,
                                       os.path.join(log_dir,
                                                    "%s.log" % self.__class__.__name__),
                                       logging.INFO)
   try:
       logger = PyLog().get_logger(self.__class__.__name__,
                                   getattr(PyLog, "log_file"), logging.INFO)
   except AttributeError:
       if not os.path.exists(os.getcwd() + "\\Logs"):
           os.mkdir(os.getcwd() + "\\Logs")

       log_dir = os.getcwd() + "\\Logs"
       logger = PyLog().get_logger(self.__class__.__name__,
                                   os.path.join(log_dir,
                                                "%s.log" % self.__class__.__name__),
                                   logging.INFO, True)