我们正在将来自多台计算机timestamps
的{{1}}的日志转储到单个文件中,并且每个条目都少于4KB。 Python的日志记录模块显然处理500
并保证locking
。 https://docs.python.org/2/library/logging.html#thread-safety
感谢@ user2357112的反馈意见,以下是更多信息:
您使用的是某种网络附加存储吗?
存储是一个网络磁盘,它共享一个可以读/写的可写Thread-Safety
。
计算机是否在本地记录事物并以某种方式同步其日志文件?
计算机没有在本地登录,但是他们已完成,他们正在使用“记录器”写入共享的logfile.txt
的末尾
来自不同计算机的日志记录如何以同一文件结尾?
所有计算机都附加到logfile.txt
那么写入单个文件会出现什么问题?或者使用安全吗?
答案 0 :(得分:1)
那么写入单个文件会出现什么问题?或者使用安全吗?
充其量,处理文件访问权限的驱动程序将把文件专门锁定到一个进程/用户。最糟糕的是,仅仅因为你的追加并不意味着它会是连续的。例如,你可能会以这样的方式结束排队。
也许更好/更安全的方法就像/myNas/logs/MMDDYYHH/workerPID.log
之类的东西,然后让每日清洁脚本将所有这些合并到master.log文件中。在中间处理步骤中,您可以读取每个日志,将其放入:memory:sqlite数据库,按日期排序条目&时间,并将其转储到合并的master.log
。
或者,如果需要实时日志监控,我相信Windows具有类似watch
的工具,可以在写入磁盘时跟踪每个文件。