代码之家  ›  专栏  ›  技术社区  ›  anatta

在末尾重命名日志文件

  •  2
  • anatta  · 技术社区  · 7 年前

    filename='D://my_code_3/logging/'+timestr+'_XFR.log'

    ###set up logging to file
    logging.basicConfig(level=logging.DEBUG,format='%(asctime)s %(name)-12s %(levelname)-8s %(message)s',datefmt='%m-%d %H:%M',filename='D://my_code_3/logging/'+timestr+'_XFR.log', filemode='w')
    

    在程序执行期间,在此日志文件中创建了各种条目。

    str9 )由程序捕获(在程序执行开始时,当日志文件刚刚创建时,最初不可用)。为了在程序结束时重命名日志文件,必须首先关闭旧名称日志文件。我在以下代码中包含了这些说明:

    fh = open('D://my_code_3/logging/'+timestr+'_XFR.log', "r")
    print fh.read()
    fh.close()
    

    最后,我要求如下重命名:

    old_file ='D://my_code_3/logging/'+timestr+'_XFR.log'
    new_file = 'D://my_code_3/logging/'+timestr+''+str9+'_XFR.log'
    os.rename(old_file, new_file)
    

    我收到以下错误消息:

    回溯(最后一次调用):文件“qar\u xfr\u 2017\u 10\u 05\u WIP.py”, 第283行,in

    我认为旧的_文件仍在编写中,因此该文件已打开。如果是这样,我如何在尝试重命名旧的_文件之前提供时间延迟?

    提前感谢您更正/建议解决方案。

    1 回复  |  直到 7 年前
        1
  •  1
  •   Steven    4 年前

    所有处理程序都需要通过调用

    logging.shutdown()