调试dask - 无法检测客户端

时间:2017-07-25 11:45:47

标签: debugging dask dask-distributed

我的dask groupby脚本失败(Memory Error)所以我开始调试脚本。我在一台独立的电脑上跑步 我用{更新了logging文件中的config.yaml logging: distributed: debug bokeh: debug tornado: info

我正在使用以下更新运行dask distributed example computation

from distributed import LocalCluster  
c=LocalCluster()  

以及将range修改为range(10000)的更新后的脚本。

当脚本运行(并成功完成)时,我看到Jupyter Notebook中的以下日志会重复,直到脚本完成。

  

bokeh.server.tornado - DEBUG - [pid 3088] 0个客户连接
  bokeh.server.tornado - DEBUG - [pid 3088] / system有0个会话   0未使用的bokeh.server.tornado - DEBUG - [pid 3088] /偷窃   有0个会话,0个未使用的bokeh.server.tornado - DEBUG - [pid 3088]   / workers有0个会话,0个未使用的bokeh.server.tornado - DEBUG -   [pid 3088] / events有0个会话,0个未使用的bokeh.server.tornado    - DEBUG - [pid 3088] / counter有0个会话,0个未使用的bokeh.server.tornado - DEBUG - [pid 3088] / tasks有0个会话   0未使用的bokeh.server.tornado - DEBUG - [pid 3088] / status为0   0未使用的会话

为什么我没有看到任何正在运行的工人?

运行c = LocalCluster()

时,我收到以下日志
  

bokeh.server.server - INFO - 启动Bokeh服务器版本0.12.4
  bokeh.server.server - 警告 - 主持通配符' '可以揭露   应用于HTTP主机头攻击。主机通配符应该只是   用于测试目的。 bokeh.server.server - 警告 - 主持人   通配符' '可以将应用程序暴露给HTTP主机头攻击。   主机通配符应仅用于测试目的。   bokeh.server.tornado - DEBUG - 允许的主机标题:[' ']   bokeh.server.tornado - DEBUG - 这些主机来源可以连接到   websocket:[' '] bokeh.server.tornado - DEBUG - 模式是:   bokeh.server.tornado - DEBUG - [(' / system /?',bokeh.server.tornado -   调试 - ,   bokeh.server.tornado - DEBUG - {' application_context':   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / system / ws'}),bokeh.server.tornado - DEBUG -   (' / system / ws',bokeh.server.tornado - DEBUG - ,bokeh.server.tornado - DEBUG -
  {' application_context&#39 ;:   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / system / ws'}),bokeh.server.tornado - DEBUG -   (' /system/autoload.js' ;, bokeh.server.tornado - DEBUG - ,   bokeh.server.tornado - DEBUG - {' application_context':   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / system / ws'}),bokeh.server.tornado - DEBUG -   (' / stealing /?',bokeh.server.tornado - DEBUG - ,bokeh.server.tornado -   DEBUG - {' application_context':   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / stealing / ws'}),bokeh.server.tornado - DEBUG    - (' / stealing / ws',bokeh.server.tornado - DEBUG - ,bokeh.server.tornado - DEBUG -
  {' application_context&#39 ;:   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / stealing / ws'}),bokeh.server.tornado - DEBUG    - (' /stealing/autoload.js' ;, bokeh.server.tornado - DEBUG - ,   bokeh.server.tornado - DEBUG - {' application_context':   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / stealing / ws'}),bokeh.server.tornado - DEBUG    - (' / workers /?',bokeh.server.tornado - DEBUG - ,bokeh.server.tornado -   DEBUG - {' application_context':   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / workers / ws'}),bokeh.server.tornado - DEBUG    - (' / workers / ws',bokeh.server.tornado - DEBUG - ,bokeh.server.tornado - DEBUG -
  {' application_context&#39 ;:   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / workers / ws'}),bokeh.server.tornado - DEBUG    - (' /workers/autoload.js' ;, bokeh.server.tornado - DEBUG - ,   bokeh.server.tornado - DEBUG - {' application_context':   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / workers / ws'}),bokeh.server.tornado - DEBUG    - (' / events /?',bokeh.server.tornado - DEBUG - ,bokeh.server.tornado -   DEBUG - {' application_context':   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / events / ws'}),bokeh.server.tornado - DEBUG -   (' / events / ws',bokeh.server.tornado - DEBUG - ,bokeh.server.tornado - DEBUG -
  {' application_context&#39 ;:   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / events / ws'}),bokeh.server.tornado - DEBUG -   (' /events/autoload.js' ;, bokeh.server.tornado - DEBUG - ,   bokeh.server.tornado - DEBUG - {' application_context':   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / events / ws'}),bokeh.server.tornado - DEBUG -   (' / counter /?',bokeh.server.tornado - DEBUG - ,bokeh.server.tornado -   DEBUG - {' application_context':   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / counter / ws'}),bokeh.server.tornado - DEBUG    - (' / counter / ws',bokeh.server.tornado - DEBUG - ,bokeh.server.tornado - DEBUG -
  {' application_context&#39 ;:   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / counter / ws'}),bokeh.server.tornado - DEBUG    - (' /counters/autoload.js' ;, bokeh.server.tornado - DEBUG - ,   bokeh.server.tornado - DEBUG - {' application_context':   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / counter / ws'}),bokeh.server.tornado - DEBUG    - (' / tasks /?',bokeh.server.tornado - DEBUG - ,bokeh.server.tornado -   DEBUG - {' application_context':   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / tasks / ws'}),bokeh.server.tornado - DEBUG -   (' / tasks / ws',bokeh.server.tornado - DEBUG - ,bokeh.server.tornado - DEBUG -
  {' application_context&#39 ;:   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / tasks / ws'}),bokeh.server.tornado - DEBUG -   (' /tasks/autoload.js' ;, bokeh.server.tornado - DEBUG - ,   bokeh.server.tornado - DEBUG - {' application_context':   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / tasks / ws'}),bokeh.server.tornado - DEBUG -   (' / status /?',bokeh.server.tornado - DEBUG - ,bokeh.server.tornado -   DEBUG - {' application_context':   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / status / ws'}),bokeh.server.tornado - DEBUG -   (' / status / ws',bokeh.server.tornado - DEBUG - ,bokeh.server.tornado - DEBUG -
  {' application_context&#39 ;:   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / status / ws'}),bokeh.server.tornado - DEBUG -   (' /status/autoload.js' ;, bokeh.server.tornado - DEBUG - ,   bokeh.server.tornado - DEBUG - {' application_context':   ,bokeh.server.tornado - DEBUG -
  ' bokeh_websocket_path':' / status / ws'}),bokeh.server.tornado - DEBUG -   (' /?',bokeh.server.tornado - DEBUG - ,bokeh.server.tornado -   调试 - {'应用程序':{' / counter':   ,bokeh.server.tornado - DEBUG -
  ' / events':,bokeh.server.tornado - DEBUG -
  ' / status':,bokeh.server.tornado - DEBUG -
  ' /偷窃':,bokeh.server.tornado - DEBUG -
  ' / system':,bokeh.server.tornado - DEBUG -
  ' / tasks':,bokeh.server.tornado - DEBUG -
  ' / workers':},bokeh.server.tornado - DEBUG -
  '前缀':'',bokeh.server.tornado - DEBUG - ' use_redirect':   真}),bokeh.server.tornado - DEBUG - (' / static /(.*)',   bokeh.server.tornado - DEBUG - )]

1 个答案:

答案 0 :(得分:1)

您看到的日志消息来自Bokeh诊断仪表板。他们基本上说没有人在看诊断网页。您可能希望降低Bokeh日志记录的详细程度。我认为这些信息并不关心你。

对于任何用户来说,调试级别日志记录几乎总是过于冗长。开发人员在调试时往往会使用它。