gpt4 book ai didi

python - 写入并发日志文件

转载 作者:行者123 更新时间:2023-11-28 22:58:19 25 4
gpt4 key购买 nike

我在 apache2 上有一个 WSGI 应用程序,它以最简单的方式写入日志文件:

def log (msg):
with open (LOGFILE, 'a') as f: f.write (msg)

在我的沙箱环境中它运行良好,但我有点担心并发性。如果 apache2 运行各种线程,我是否还需要担心并发问题?也许我的日志文件会被扰乱?如果另一个线程已经在记录日志,对 log (msg) 的调用可能会失败吗?如果是这种情况,我该如何预防?

编辑:为了进行测试,我从两个 shell 同时运行两个脚本:

#! /usr/bin/python3.2

def log ():
with open ('log', 'a') as f:
f.write ('message from thread A\n')

while (True): log ()

#! /usr/bin/python3.2

def log ():
with open ('log', 'a') as f:
f.write ('message from thread B\n')

while (True): log ()

日志文件看起来不错,没有发生错误。从两个不同的线程写入同一个文件是我幸运还是安全。文件系统是 ext4。

最佳答案

您可以使用 python logging module

关于python - 写入并发日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13897540/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com