server: deprecate debug logging option
Add a debug option to the command line to enable debug features. Signed-off-by: Eric Callahan <arksine.code@gmail.com>
This commit is contained in:
parent
d2cbd1d0a0
commit
86fc1057f7
|
@ -194,9 +194,8 @@ class MoonrakerApp:
|
|||
mimetypes.add_type('text/plain', '.gcode')
|
||||
mimetypes.add_type('text/plain', '.cfg')
|
||||
|
||||
self.debug = self.server.is_debug_enabled()
|
||||
app_args: Dict[str, Any] = {
|
||||
'serve_traceback': self.debug,
|
||||
'serve_traceback': self.server.is_verbose_enabled(),
|
||||
'websocket_ping_interval': 10,
|
||||
'websocket_ping_timeout': 30,
|
||||
'server': self.server,
|
||||
|
@ -275,7 +274,10 @@ class MoonrakerApp:
|
|||
|
||||
def log_request(self, handler: tornado.web.RequestHandler) -> None:
|
||||
status_code = handler.get_status()
|
||||
if not self.debug and status_code in [200, 204, 206, 304]:
|
||||
if (
|
||||
not self.server.is_verbose_enabled()
|
||||
and status_code in [200, 204, 206, 304]
|
||||
):
|
||||
# don't log successful requests in release mode
|
||||
return
|
||||
if status_code < 400:
|
||||
|
@ -620,7 +622,7 @@ class DynamicRequestHandler(AuthorizedRequestHandler):
|
|||
return args
|
||||
|
||||
def _log_debug(self, header: str, args: Any) -> None:
|
||||
if self.server.is_debug_enabled():
|
||||
if self.server.is_verbose_enabled():
|
||||
resp = args
|
||||
if isinstance(args, dict):
|
||||
if (
|
||||
|
|
|
@ -1162,7 +1162,6 @@ class INotifyHandler:
|
|||
) -> None:
|
||||
self.server = config.get_server()
|
||||
self.event_loop = self.server.get_event_loop()
|
||||
self.debug_enabled = self.server.is_debug_enabled()
|
||||
self.enable_warn = config.getboolean("enable_inotify_warnings", True)
|
||||
self.file_manager = file_manager
|
||||
self.gcode_metadata = gcode_metadata
|
||||
|
@ -1306,7 +1305,7 @@ class INotifyHandler:
|
|||
return True
|
||||
|
||||
def log_nodes(self) -> None:
|
||||
if self.debug_enabled:
|
||||
if self.server.is_verbose_enabled():
|
||||
debug_msg = f"Inotify Watches After Scan:"
|
||||
for wdesc, node in self.watched_nodes.items():
|
||||
wdir = node.get_path()
|
||||
|
|
|
@ -1521,6 +1521,10 @@ class InstallValidator:
|
|||
key_dest = certs_path.joinpath("moonraker.key")
|
||||
self._link_data_file(key_dest, ssl_key)
|
||||
cfg_source.remove_option("server", "ssl_key_path")
|
||||
|
||||
# Remove deprecated debug option
|
||||
if server_cfg.has_option("enable_debug_logging"):
|
||||
cfg_source.remove_option("server", "enable_debug_logging")
|
||||
except Exception:
|
||||
cfg_source.cancel()
|
||||
raise
|
||||
|
|
|
@ -1404,7 +1404,7 @@ class WebcamStream:
|
|||
except asyncio.CancelledError:
|
||||
raise
|
||||
except Exception as e:
|
||||
if not self.server.is_debug_enabled():
|
||||
if not self.server.is_verbose_enabled():
|
||||
return
|
||||
logging.exception("SimplyPrint WebCam Stream Error")
|
||||
|
||||
|
@ -1628,7 +1628,7 @@ class ProtoLogger:
|
|||
def __init__(self, config: ConfigHelper) -> None:
|
||||
server = config.get_server()
|
||||
self._logger: Optional[logging.Logger] = None
|
||||
if not config["server"].getboolean("enable_debug_logging", False):
|
||||
if not server.is_verbose_enabled():
|
||||
return
|
||||
fm: FileManager = server.lookup_component("file_manager")
|
||||
log_root = fm.get_directory("logs")
|
||||
|
|
|
@ -41,7 +41,6 @@ class AppDeploy(BaseDeploy):
|
|||
def __init__(self, config: ConfigHelper, cmd_helper: CommandHelper) -> None:
|
||||
super().__init__(config, cmd_helper, prefix="Application")
|
||||
self.config = config
|
||||
self.debug = self.cmd_helper.is_debug_enabled()
|
||||
type_choices = list(TYPE_TO_CHANNEL.keys())
|
||||
self.type = config.get('type').lower()
|
||||
if self.type not in type_choices:
|
||||
|
@ -224,7 +223,7 @@ class AppDeploy(BaseDeploy):
|
|||
def get_update_status(self) -> Dict[str, Any]:
|
||||
return {
|
||||
'channel': self.channel,
|
||||
'debug_enabled': self.debug,
|
||||
'debug_enabled': self.server.is_debug_enabled(),
|
||||
'need_channel_update': self.need_channel_update,
|
||||
'is_valid': self._is_valid,
|
||||
'configured_type': self.type,
|
||||
|
|
|
@ -67,7 +67,7 @@ class GitDeploy(AppDeploy):
|
|||
msgs = '\n'.join(invalids)
|
||||
self.log_info(
|
||||
f"Repo validation checks failed:\n{msgs}")
|
||||
if self.debug:
|
||||
if self.server.is_debug_enabled():
|
||||
self._is_valid = True
|
||||
self.log_info(
|
||||
"Repo debug enabled, overriding validity checks")
|
||||
|
@ -402,7 +402,7 @@ class GitRepo:
|
|||
if not detected_origin.endswith(".git"):
|
||||
detected_origin += ".git"
|
||||
if (
|
||||
self.cmd_helper.is_debug_enabled() or
|
||||
self.server.is_debug_enabled() or
|
||||
not detected_origin.startswith("http") or
|
||||
detected_origin == self.origin_url.lower()
|
||||
):
|
||||
|
@ -703,7 +703,7 @@ class GitRepo:
|
|||
f"Git Repo {self.alias}: Cannot perform pull on a "
|
||||
"detached HEAD")
|
||||
cmd = "pull --progress"
|
||||
if self.cmd_helper.is_debug_enabled():
|
||||
if self.server.is_debug_enabled():
|
||||
cmd = f"{cmd} --rebase"
|
||||
if self.is_beta:
|
||||
cmd = f"{cmd} {self.git_remote} {self.upstream_commit}"
|
||||
|
|
|
@ -506,9 +506,6 @@ class CommandHelper:
|
|||
def get_umdb(self) -> NamespaceWrapper:
|
||||
return self.umdb
|
||||
|
||||
def is_debug_enabled(self) -> bool:
|
||||
return self.debug_enabled
|
||||
|
||||
def set_update_info(self, app: str, uid: int) -> None:
|
||||
self.cur_update_app = app
|
||||
self.cur_update_id = uid
|
||||
|
|
|
@ -64,6 +64,11 @@ class Server:
|
|||
self.event_loop = event_loop
|
||||
self.file_logger = file_logger
|
||||
self.app_args = args
|
||||
self.events: Dict[str, List[FlexCallback]] = {}
|
||||
self.components: Dict[str, Any] = {}
|
||||
self.failed_components: List[str] = []
|
||||
self.warnings: Dict[str, str] = {}
|
||||
|
||||
self.config = config = self._parse_config()
|
||||
self.host: str = config.get('host', "0.0.0.0")
|
||||
self.port: int = config.getint('port', 7125)
|
||||
|
@ -72,17 +77,12 @@ class Server:
|
|||
self.server_running: bool = False
|
||||
|
||||
# Configure Debug Logging
|
||||
self.debug = config.getboolean('enable_debug_logging', False)
|
||||
asyncio_debug = config.getboolean('enable_asyncio_debug', False)
|
||||
log_level = logging.DEBUG if self.debug else logging.INFO
|
||||
config.getboolean('enable_debug_logging', False, deprecate=True)
|
||||
self.debug = args["debug"]
|
||||
log_level = logging.DEBUG if args["verbose"] else logging.INFO
|
||||
logging.getLogger().setLevel(log_level)
|
||||
self.event_loop.set_debug(asyncio_debug)
|
||||
self.event_loop.set_debug(args["asyncio_debug"])
|
||||
|
||||
# Event initialization
|
||||
self.events: Dict[str, List[FlexCallback]] = {}
|
||||
self.components: Dict[str, Any] = {}
|
||||
self.failed_components: List[str] = []
|
||||
self.warnings: Dict[str, str] = {}
|
||||
self.klippy_connection = KlippyConnection(config)
|
||||
|
||||
# Tornado Application/Server
|
||||
|
@ -125,6 +125,9 @@ class Server:
|
|||
def is_debug_enabled(self) -> bool:
|
||||
return self.debug
|
||||
|
||||
def is_verbose_enabled(self) -> bool:
|
||||
return self.app_args["verbose"]
|
||||
|
||||
def _parse_config(self) -> confighelper.ConfigHelper:
|
||||
config = confighelper.get_configuration(self, self.app_args)
|
||||
# log config file
|
||||
|
@ -455,7 +458,10 @@ def main(cmd_line_args: argparse.Namespace) -> None:
|
|||
"data_path": str(data_path),
|
||||
"is_default_data_path": cmd_line_args.datapath is None,
|
||||
"config_file": cfg_file,
|
||||
"startup_warnings": startup_warnings
|
||||
"startup_warnings": startup_warnings,
|
||||
"verbose": cmd_line_args.verbose,
|
||||
"debug": cmd_line_args.debug,
|
||||
"asyncio_debug": cmd_line_args.asyncio_debug
|
||||
}
|
||||
|
||||
# Setup Logging
|
||||
|
@ -548,4 +554,16 @@ if __name__ == '__main__':
|
|||
parser.add_argument(
|
||||
"-n", "--nologfile", action='store_true',
|
||||
help="disable logging to a file")
|
||||
parser.add_argument(
|
||||
"-v", "--verbose", action="store_true",
|
||||
help="Enable verbose logging"
|
||||
)
|
||||
parser.add_argument(
|
||||
"-g", "--debug", action="store_true",
|
||||
help="Enable Moonraker debug features"
|
||||
)
|
||||
parser.add_argument(
|
||||
"-o", "--asyncio-debug", action="store_true",
|
||||
help="Enable asyncio debug flag"
|
||||
)
|
||||
main(parser.parse_args())
|
||||
|
|
Loading…
Reference in New Issue