コード例 #1
0
ファイル: __init__.py プロジェクト: deadbok/server-hud
def init():
    handlers = []
    for service in ws.config.CONFIG['WS_SERVICES']:
        logger.info("Adding WebSocket service: " + service)
        handlers.append((r"/ws/" + service, getattr(globals()[service], "WebSocket" + service + "Handler")))

    handlers.append((r"/ws/services", WebSocketServicesHandler))
    app = tornado.web.Application(handlers=handlers, autoreload=True)

    return app
コード例 #2
0
ファイル: remote_host.py プロジェクト: deadbok/server-hud
    def open(self):
        global HANDLER, OBSERVER

        self.path, _ = os.path.split(ws.config.CONFIG['ACCESS_LOG'])
        if self.path not in HANDLER:
            HANDLER[self.path] = AccessHandler(handler=getattr(self, 'send'))
            OBSERVER[self.path] = Observer()
            logger.info("Watching: " + self.path)
            OBSERVER[self.path].schedule(HANDLER[self.path], self.path, recursive=True)
            try:
                OBSERVER[self.path].start()
            except OSError:
                logger.error('Cannot start observer')
                self.close()
                return
        self.observer = True
        self.send({ "lastline": HANDLER[self.path].lastline})
コード例 #3
0
ファイル: runws.py プロジェクト: deadbok/server-hud
import ws

from ws import __version__
from ws.config import init_config
from ws.log import logger, init_file_log, init_console_log, close_log


define("debug", default=False, help="Log debug information", type=bool)
define("port", default=5000, help="run on the given port", type=int)
define("config", default=os.getcwd() + "/config.py", help="Path to configuration file", type=str)


if __name__ == "__main__":
    tornado.options.parse_command_line()
    init_config(options.config)
    # Init logging to file
    if options.debug:
        init_file_log(logging.DEBUG, ws.config.CONFIG['LOG_FILE'])
    else:
        init_file_log(logging.INFO, ws.config.CONFIG['LOG_FILE'])

    # init_file_log(logging.DEBUG)

    app = ws.init()
    logger.info("server-hud WebSocket server version " + __version__)
    http_server = tornado.httpserver.HTTPServer(app)
    http_server.listen(options.port)
    logger.info("Listening on port: " + str(options.port))

    tornado.ioloop.IOLoop.instance().start()