以下代码用于在某些时候发出日志,但似乎不再这样做。每个工作人员中的日志记录机制配置不应该允许日志出现在标准输出上吗?如果没有,我忽略了什么?
import logging
from distributed import Client, LocalCluster
import numpy as np
def func(args):
i, x = args
logging.basicConfig(level=logging.INFO,
format='%(asctime)s %(name)s %(levelname)s %(message)s')
logger = logging.getLogger('func %i' % i)
logger.info('computing svd')
return np.linalg.svd(x)
if __name__ == '__main__':
lc = LocalCluster(10)
c = Client(lc)
data = [np.random.rand(50, 50) for i in range(50)]
fut = c.map(func, zip(range(len(data)), data))
results = c.gather(fut)
lc.close()
根据这个问题,我尝试将记录器配置代码放入c.run(init_logging)
在客户端实例化后立即调用的单独函数中,但这也没有任何区别。
我在 Linux 上使用分布式 1.19.3 和 Python 3.6.3。我有
logging:
distributed: info
distributed.client: info
在~/.dask/config.yaml
.