首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >马戏团的WEBUI不起作用

马戏团的WEBUI不起作用
EN

Stack Overflow用户
提问于 2016-12-02 21:47:25
回答 1查看 273关注 0票数 0

我有以下circus配置:

代码语言:javascript
复制
[circus]
pidfile       = /tmp/circus.pid
check_delay   = 5
statsd        = True
httpd         = True
httpd_host    = 10.3.2.1
httpd_port    = 8888
endpoint      = tcp://127.0.0.1:5555
pubsub_endpoint = tcp://127.0.0.1:5556
stats_endpoint  = tcp://127.0.0.1:5557
stream_backend  = thread

[watcher:my_app]
working_dir   = /var/www/my_app/
cmd           = /usr/local/bin/waitress-serve
args          = --unix-socket='/tmp/my_app.socket' --threads=16 --http_app:main
uid           = www-data
gid           = www-data
numprocesses  = 1
warmup_delay  = 0
use_sockets   = True
graceful_timeout = 2
stderr_stream.class = StdoutStream

它一开始似乎起作用了:

代码语言:javascript
复制
# circusd circus.ini
2016-12-02 18:21:15 circus[6406] [INFO] Starting master on pid 6406
2016-12-02 18:21:15 circus[6406] [INFO] sockets started
2016-12-02 18:21:15 circus[6406] [INFO] Arbiter now waiting for commands
2016-12-02 18:21:15 circus[6406] [INFO] my_app started
2016-12-02 18:21:15 circus[6406] [INFO] circusd-stats started
2016-12-02 18:21:15 circus[6406] [INFO] circushttpd started
2016-12-02 18:21:16 circus[6414] [INFO] Starting the stats streamer
Serving on http://unix:/tmp/my_app.socket
2016-12-02 18:21:16 circus-web[6415] [INFO] Starting circus web ui on fd 6

但是如果我尝试从endpoint (127.0.0.1:5555)连接到WEBUI

代码语言:javascript
复制
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/tornado/web.py", line 1425, in _stack_context_handle_exception
    raise_exc_info((type, value, traceback))
  File "/usr/local/lib/python2.7/dist-packages/tornado/stack_context.py", line 314, in wrapped
    ret = fn(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/tornado/web.py", line 1638, in future_complete
    f.result()
  File "/usr/local/lib/python2.7/dist-packages/tornado/concurrent.py", line 237, in result
    raise_exc_info(self._exc_info)
  File "/usr/local/lib/python2.7/dist-packages/tornado/gen.py", line 285, in wrapper
    yielded = next(result)
  File "/usr/local/lib/python2.7/dist-packages/circusweb/circushttpd.py", line 164, in post
    endpoints = self.get_arguments('endpoint_list', [])
  File "/usr/local/lib/python2.7/dist-packages/tornado/web.py", line 412, in get_arguments
    assert isinstance(strip, bool)
AssertionError

有什么不对的?似乎是circus代码中的一个bug。

EN

回答 1

Stack Overflow用户

发布于 2016-12-02 22:33:20

有一个解药

代码语言:javascript
复制
 @@ -161,11 +161,11 @@ def get(self):
      @gen.coroutine
      def post(self):
          endpoints_list = list(self.session.endpoints)
 -        endpoints = self.get_arguments('endpoint_list', [])
 +        endpoints = self.get_arguments('endpoint_list')

          # If no selection in list
          if not endpoints:
 -            endpoints = self.get_arguments('endpoint_direct', [])
 +            endpoints = self.get_arguments('endpoint_direct')

          if not endpoints:
              self.redirect(self.reverse_url('disconnect'))

遗憾的是,它没有找到通往pip的途径。

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

https://stackoverflow.com/questions/40941339

复制
相关文章

相似问题

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