gpt4 book ai didi

python - 日志模块的线程安全,网络上的线程安全吗?

转载 作者:太空宇宙 更新时间:2023-11-03 14:25:00 26 4
gpt4 key购买 nike

我们将来自多台计算机 (500) 的日志转储到带有时间戳的单个文件中,并且每个条目小于 4KB。 Python 的日志记录模块显然可以处理锁定并保证线程安全https://docs.python.org/2/library/logging.html#thread-safety

感谢@user2357112的反馈,以下是一些更多信息:

Are you using some sort of network-attached storage?

存储为网盘,共享一个可写的logfile.txt,可读写。

Are the computers logging things locally and synchronizing their log files somehow?

计算机未在本地记录但已完成的计算机,它们正在使用“记录器”写入共享的 logfile.txt 末尾

How are log records from different computers ending up in the same file?

所有计算机都附加到 logfile.txt

那么写入单个文件会出现什么问题呢?或者使用安全吗?

最佳答案

So What can go wrong writing to a single file? Or is it safe to use?

处理文件访问的驱动程序最多只能将文件锁定为一个进程/用户。最坏的情况是,仅仅因为您要附加并不意味着它是连续的。例如,您损坏的线路可能会像这样结束。

也许更好/更安全的方法就像 /myNas/logs/MMDDYYHH/workerPID.log ,然后使用每日清理脚本将所有这些合并到 master.log 文件中。在中间处理步骤中,您可以读取每个日志,将其放入 :memory: sqlite 数据库中,按日期和时间对条目进行排序,然后将其转储到合并的 master.log 中。

或者,如果需要实时日志监控,我相信 Windows 具有类似 watch 等等效工具,它可以在每个文件写入磁盘时对其进行跟踪。

关于python - 日志模块的线程安全,网络上的线程安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47701885/

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