嗨,我正在使用 rpyc 模块连接到远程机器并在其上执行一些东西。在进程中,远程机器可能会记录一些东西,所以我需要将它重定向到我的本地机器。
在尝试重定向日志时,我遇到了这个奇怪的异常:
import rpyc
c = rpyc.classic.connect("localhost")
l = c.modules["logging"].getLogger("foo")
for h in l.handlers:
print h
此循环导致引发异常:
2017-03-19 11:38:29,180 - protocol.py :312 - DEBUG - Exception caught
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/rpyc-3.2.3-py2.7.egg/rpyc/core/protocol.py", line 302, in _dispatch_request
res = self._HANDLERS[handler](self, *args)
File "/usr/lib/python2.7/site-packages/rpyc-3.2.3-py2.7.egg/rpyc/core/protocol.py", line 560, in _handle_callattr
return self._handle_getattr(oid, name)(*args, **dict(kwargs))
StopIteration
有谁看到我做错了什么?为什么我不能遍历 l.handlers?