def main(): """start engine""" define("port", default=9999, help="Server port", type=int) define("conf", default="app.conf", help="Config file path", type=str) define("status", default="dev", help="Server status use dev or live", type=str) tornado.options.parse_command_line() if os.path.exists(options.conf): print 'Loading', options.conf else: exit("No config file at %s" %options.conf) configs = get_config(options.conf) opts = getattr(configs, options.status) connect(opts.db_name, host=opts.db_host, username=opts.db_username, password=opts.db_password) profiles = Settings.settings() http_server = httpserver.HTTPServer(Engine(opts, profiles)) http_server.listen(options.port) tornado.locale.load_translations(os.path.join(os.path.dirname(__file__), "core/trans")) ioloop.IOLoop.instance().start()
# Preload libraries #from utils.mail import send_mail from core.base.reminder import send_mentions # Provide queue names to listen to as arguments to this script, # similar to rqworker define("conf", default="app.conf", help="Config file path", type=str) define("status", default="dev", help="Server status use dev or live", type=str) tornado.options.parse_command_line() if os.path.exists(options.conf): print 'Loading', options.conf else: exit("No config file at %s" %options.conf) configs = get_config(options.conf) opts = getattr(configs, options.status) connect(opts.db_name, username=opts.db_username, password=opts.db_password) def my_handler(job, exc_type, exc_value, traceback): logging.info("%s-%s-%s" %(exc_type, exc_value, traceback)) with Connection(): qs = map(rq.Queue, sys.argv[1:]) or [rq.Queue()] w = rq.Worker(qs, exc_handler=my_handler) w.work()