def server(): options.parse_command_line() init_logger(options.filename, options.level, options.maxSize, options.backupCount) if options.t: create_db.run() elif options.init: logger.info("准备疫情数据初始化") SariDataCollector(init=True).run() logger.info("疫情数据初始化完成") elif options.cache: logger.info("准备微信参数缓存") jsapi_ticket() logger.info("微信参数缓存完成") else: logger.info("启动疫情数据定时采集开始启动") timer = TaskTimer() timer.join_task(run, [], interval=timer_loop) timer.join_task(jsapi_ticket, [], interval=7100) timer.start() logger.info("启动疫情数据定时采集启动成功") app = make_app(None, log_func) http_Server = HTTPServer(app, max_buffer_size=504857600, max_body_size=504857600) http_Server.listen(sys_port) logger.info("==listen on port http://%s:%d ==", machine_ip(), sys_port) tornado.ioloop.IOLoop.instance().start()
def main(): _auth_handlers = { "simple": SimpleLoginHandler, "openid": OpenIdLoginHandler, "github": GithubLoginHandler } parser = argparse.ArgumentParser( formatter_class=argparse.ArgumentDefaultsHelpFormatter) # yapf: disable parser.add_argument('-p', '--port', type=int, default=4000, help='listen port') parser.add_argument('-d', '--debug', action='store_true', help='open debug log, and open hot reload') parser.add_argument('--auth', type=str, default='simple', choices=_auth_handlers.keys(), help='authentication method') parser.add_argument("--no-xheaders", action="store_true", help="disable support for X-Real-Ip/X-Forwarded-For") parser.add_argument( '--auth-conf-file', type=argparse.FileType('r'), help='authentication config file') # yapf: enable args = parser.parse_args() print(args) enable_pretty_logging() db.setup() ioloop = tornado.ioloop.IOLoop.current() # TODO(ssx): for debug use # async def dbtest(): # items = await db.table("devices").get_all( # limit=2, rsql_hook=lambda q: q.order_by(r.desc("createdAt"))) # for item in items: # pprint(item) # ioloop.spawn_callback(dbtest) login_handler = _auth_handlers[args.auth] app = make_app(login_handler, debug=args.debug) server = HTTPServer(app, xheaders=not args.no_xheaders) server.listen(args.port) logger.info("listen on port http://%s:%d", machine_ip(), args.port) try: ioloop.start() except KeyboardInterrupt: ioloop.stop()
def server(): options.parse_command_line() init_logger(options.filename, options.level, options.maxSize, options.backupCount) if options.t: create_db.run() elif options.init: logger.info("地区数据初始化") web.task.fetch_data() logger.info("地区数据初始化完成") else: app = make_app(None, log_func) http_Server = HTTPServer(app, max_buffer_size=504857600, max_body_size=504857600) http_Server.listen(sys_port) logger.info("==listen on port http://%s:%d ==", machine_ip(), sys_port) tornado.ioloop.IOLoop.instance().start()
def server(): options.parse_command_line() init_logger(options.filename, options.level, options.maxSize, options.backupCount) if options.t: create_db.run() elif options.init: logger.info("准备疫情数据初始化") SariDataCollector(api=collector_init_url).run() logger.info("疫情数据初始化完成") else: logger.info("启动疫情数据定时采集开始启动") Collector = SariDataCollector() tornado.ioloop.PeriodicCallback(callback=Collector.run, callback_time=timer_loop).start() logger.info("启动疫情数据定时采集启动成功") app = make_app(None, log_func) http_Server = HTTPServer(app, max_buffer_size=504857600, max_body_size=504857600) http_Server.listen(sys_port) logger.info("==listen on port http://%s:%d ==", machine_ip(), sys_port) tornado.ioloop.IOLoop.instance().start()