def __initalize_runserver__(): if env == 'DEBUG': log_level = 'info' else: log_level = 'info' logger = get_logger(log_level) logger.debug('Running on debug') logger.info('Database is ready') api.run(address="0.0.0.0", debug=env == 'DEBUG', logger=logger)
def main( app, host: str, port: int, uds: str, fd: int, loop: str, http: str, ws: str, wsgi: bool, debug: bool, log_level: str, no_access_log: bool, proxy_headers: bool, root_path: str, limit_concurrency: int, limit_max_requests: int, timeout_keep_alive: int, disable_lifespan: bool, ): sys.path.insert(0, ".") kwargs = { "app": app, "host": host, "port": port, "uds": uds, "fd": fd, "loop": loop, "http": http, "ws": ws, "log_level": log_level, "access_log": not no_access_log, "wsgi": wsgi, "debug": debug, "proxy_headers": proxy_headers, "root_path": root_path, "limit_concurrency": limit_concurrency, "limit_max_requests": limit_max_requests, "timeout_keep_alive": timeout_keep_alive, "disable_lifespan": disable_lifespan, } if debug: logger = get_logger(log_level) reloader = StatReload(logger) reloader.run(run, kwargs) else: run(**kwargs)
def development(*args, **kwargs): logging.config.dictConfig({ "version": 1, "disable_existing_loggers": False, "formatters": { "standard": { "format": "%(asctime)s [%(levelname)s] %(name)s: %(message)s" } }, "handlers": { "default": { "level": "DEBUG", "formatter": "standard", "class": "logging.StreamHandler" } }, "loggers": { "goobox_nodes": { "handlers": ["default"], "level": "DEBUG", "propagate": False }, "nodes": { "handlers": ["default"], "level": "DEBUG", "propagate": False }, }, }) subprocess.run(shlex.split("alembic upgrade head")) StatReload(get_logger("debug")).run( uvicorn.run, { "app": os.environ["STARLETTE_APP"], "host": os.environ["APP_HOST"], "port": int(os.environ["APP_PORT"]), "debug": True, }, )
def run( self, host: str = None, port: int = None, debug: bool = False, log_level: str = "info", _run: Callable = None, **kwargs, ): """Serve the application using [uvicorn](https://www.uvicorn.org). # Parameters host (str): The host to bind to. Defaults to `"127.0.0.1"` (localhost). If not given and `$PORT` is set, `"0.0.0.0"` will be used to serve to all known hosts. port (int): The port to bind to. Defaults to `8000` or (if set) the value of the `$PORT` environment variable. debug (bool): Whether to serve the application in debug mode. Defaults to `False`. log_level (str): A logging level for the debug logger. Must be a logging level from the `logging` module. Defaults to `"info"`. kwargs (dict): Extra keyword arguments that will be passed to the Uvicorn runner. # See Also - [Configuring host and port](../guides/api.md#configuring-host-and-port) - [Debug mode](../guides/api.md#debug-mode) - [Uvicorn settings](https://www.uvicorn.org/settings/) for all available keyword arguments. """ if _run is None: # pragma: no cover _run = run if "PORT" in os.environ: port = int(os.environ["PORT"]) if host is None: host = "0.0.0.0" if host is None: host = "127.0.0.1" if port is None: port = 8000 if debug: self.debug = True reloader = StatReload(get_logger(log_level)) kwargs = { "app": self, "host": host, "port": port, "log_level": log_level, "debug": self.debug, **kwargs, } reloader.run(run, kwargs) else: _run(self, host=host, port=port, **kwargs)