首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >dask.config.get什么都得不到吗?

dask.config.get什么都得不到吗?
EN

Stack Overflow用户
提问于 2019-09-06 23:20:13
回答 1查看 398关注 0票数 1

达斯克有两个任务调度程序系列:

单机调度程序:此调度程序在本地进程或线程池上提供基本功能。此调度程序是首先创建的,是默认的。虽然它只能在一台机器上使用,而且不扩展分布式调度器,但使用起来简单而廉价:这个调度器更复杂,提供了更多的功能,但也需要更多的精力来设置。它可以在本地运行,也可以分布在集群中。

为了更好地理解,我正在尝试复制一些例子。

达斯克医生给出了这个例子。

代码语言:javascript
复制
>>> import dask
>>> import dask.distributed  # populate config with distributed defaults
>>> dask.config.config
{
  'logging': {
    'distributed': 'info',
    'bokeh': 'critical',
    'tornado': 'critical',
  }
  'admin': {
    'log-format': '%(name)s - %(levelname)s - %(message)s'
  }
}

>>> dask.config.get('logging')
{'distributed': 'info',
 'bokeh': 'critical',
 'tornado': 'critical'}

>>> dask.config.get('logging.bokeh')  # use `.` for nested access
'critical'

我正试着复制这个。

dask.config.config工作得很好,并给出了这个输出。

代码语言:javascript
复制
{'temporary-directory': None,
 'array': {'svg': {'size': 120}},
 'distributed': {'version': 2,
  'scheduler': {'allowed-failures': 3,
   'bandwidth': 100000000,
   'blocked-handlers': [],
   'default-data-size': 1000,
   'events-cleanup-delay': '1h',
   'idle-timeout': None,
   'transition-log-length': 100000,
   'work-stealing': True,
   'worker-ttl': None,
   'preload': [],
   'preload-argv': [],
   'dashboard': {'status': {'task-stream-length': 1000},
    'tasks': {'task-stream-length': 100000},
    'tls': {'ca-file': None, 'key': None, 'cert': None}}},
  'worker': {'blocked-handlers': [],
   'multiprocessing-method': 'forkserver',
   'use-file-locking': True,
   'connections': {'outgoing': 50, 'incoming': 10},
   'preload': [],
   'preload-argv': [],
   'daemon': True,
   'profile': {'interval': '10ms', 'cycle': '1000ms', 'low-level': False},
   'memory': {'target': 0.6, 'spill': 0.7, 'pause': 0.8, 'terminate': 0.95}},
  'client': {'heartbeat': '5s'},
  'comm': {'compression': 'auto',
   'default-scheme': 'tcp',
   'socket-backlog': 2048,
   'recent-messages-log-length': 0,
   'timeouts': {'connect': '10s', 'tcp': '30s'}},
  'dashboard': {'link': '{scheme}://{host}:{port}/status',
   'export-tool': False},
  'admin': {'tick': {'interval': '20ms', 'limit': '3s'},
   'log-length': 10000,
   'log-format': '%(name)s - %(levelname)s - %(message)s',
   'pdb-on-err': False}}}

虽然>>> dask.config.get('logging')给出了这个错误

代码语言:javascript
复制
---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
<ipython-input-16-ffda8dcb4de4> in <module>
----> 1 dask.config.get('logging')

~/anaconda3/lib/python3.7/site-packages/dask/config.py in get(key, default, config)
    430         k = canonical_name(k, result)
    431         try:
--> 432             result = result[k]
    433         except (TypeError, IndexError, KeyError):
    434             if default is not no_default:

KeyError: 'logging'

我遗漏了什么?

EN

回答 1

Stack Overflow用户

发布于 2019-09-08 22:16:31

您会注意到没有顶级的“日志”条目。它在“分布式”名称中,所以您可能需要

代码语言:javascript
复制
dask.config.get("distributed.logging")

这样,文档中的示例就会产生误导。我在PR:https://github.com/dask/dask/pull/5374中改变了它

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57829474

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档