龙卷风websocket测井

2024-09-30 20:27:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试使用Tornado webserver实现websockets。在

我的设置如下:

from tornado.options import options, define, parse_command_line
import django.core.handlers.wsgi
import logging
import tornado.httpserver
import tornado.ioloop
import tornado.web
import tornado.wsgi

from pogows.tornado_sockets import GetSocketHandler, UpdateSocketHandler
from mobile.cleaner import start_cleaning

define('port', type=int, default=8080)
tornado.options.options['log_file_prefix'].set('/var/www/pogo_django/logs/tornado_server.log')
tornado.options.parse_command_line()

<snip>

def main():

    logger = logging.getLogger(__name__)
    wsgi_app = tornado.wsgi.WSGIContainer(
        django.core.handlers.wsgi.WSGIHandler())
    tornado_app = tornado.web.Application(
        [
            ('/hello-tornado', HelloHandler),
            ('/socket/get', GetSocketHandler),
            ('/socket/update', UpdateSocketHandler),
            ('.*', tornado.web.FallbackHandler, dict(fallback=wsgi_app)),
        ], debug=True)
    logger.info("Tornado POGO server starting...")
    server = tornado.httpserver.HTTPServer(tornado_app)
    server.listen(options.port)
    start_cleaning()
    tornado.ioloop.IOLoop.instance().start()

到目前为止一切都很好,龙卷风日志,我看到了信息。 现在,我尝试从websocket处理程序类中记录一些东西。在

^{pr2}$

Tornado由supervisord控制,配置如下:

[program:pogo_tornado] command=/var/www/pogo_django/tornado_server.py user=www-data stdout_logfile=/var/www/pogo_django/logs/pogo_stdout.log stderr_logfile=/var/www/pogo_django/logs/pogo_stderr.log environment=PYTHONPATH="/var/www/pogo_django/",DJANGO_SETTINGS_MODULE="pogo.settings"

我试了几件事。在

  1. 只需使用print语句,正如您从上面的片段中看到的,希望supervisord捕捉它并发送到stdout/stderr日志。在
  2. 在websocket类中创建一个单独的logging.getLogger()实例并使用它。在

它们都没有产生预期的结果。在

当我从命令行手动运行tornado时,我确实看到print版本被打印到控制台,但是{}无论如何都不起作用。在

我哪里出错了?在


Tags: djangofromimportlogappwsgiservervar
1条回答
网友
1楼 · 发布于 2024-09-30 20:27:26

呸,我明白了。我使用getLogger(),没有设置日志级别,只是盲目地将日志记录到DEBUG。在

显式地使用logger.setLevel(logging.DEBUG)向我显示了日志中的消息。在

显然龙卷风在默认情况下设置了其他级别。。愚蠢的我。在

相关问题 更多 >