如何在机器场中记录分布式python进程

时间:2013-11-05 18:34:51

标签: python logging

任何人都有这方面的经验吗?

我如何使用python统一分布式系统的日志,因为我不知道远程机器上发生了什么。

我一直在研究python内置日志记录,但它似乎没有很好的文档来记录分布式系统。

1 个答案:

答案 0 :(得分:1)

来自Python {x的official docs

  

虽然日志记录是线程安全的,但是从日志记录到单个文件   支持单个进程中的多个线程,记录到单个进程   不支持来自多个进程的文件,因为没有   跨多个序列化对单个文件的访问的标准方法   Python中的进程。如果需要从多个日志中记录单个文件   进程,这样做的一种方法是让所有进程都记录到a   SocketHandler,并有一个实现套接字的独立进程   服务器从套接字读取并记录到文件。 (如果你更喜欢,   您可以将一个线程专用于其中一个现有进程   执行此功能。)本节更详细地介绍了这种方法   细节,包括一个工作插座接收器,可用作   您可以根据自己的应用进行调整。

     

如果您使用的是包含最新版本的Python   多处理模块,您可以编写自己的使用处理程序   此类模块中的Lock类用于序列化对文件的访问   你的过程。现有的FileHandler和子类没有   目前使用多处理,尽管他们可能会这样做   未来。注意,目前,多处理模块没有   在所有平台上提供工作锁功能(请参阅   http://bugs.python.org/issue3770)。