Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions src/borg/archiver/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -482,8 +482,8 @@ def run(self, args):
func = get_func(args)
# do not use loggers before this!
is_serve = func == self.do_serve
setup_logging(level=args.log_level, is_serve=is_serve, json=args.log_json)
self.log_json = args.log_json
self.log_json = args.log_json or is_serve
setup_logging(level=args.log_level, json=self.log_json)
args.progress |= is_serve
self._setup_implied_logging(vars(args))
self._setup_topic_debugging(args)
Expand Down
16 changes: 2 additions & 14 deletions src/borg/logger.py
Original file line number Diff line number Diff line change
Expand Up @@ -53,17 +53,14 @@ def _log_warning(message, category, filename, lineno, file=None, line=None):
logger.warning(msg)


def setup_logging(stream=None, conf_fname=None, env_var="BORG_LOGGING_CONF", level="info", is_serve=False, json=False):
def setup_logging(stream=None, conf_fname=None, env_var="BORG_LOGGING_CONF", level="info", json=False):
"""setup logging module according to the arguments provided

if conf_fname is given (or the config file name can be determined via
the env_var, if given): load this logging configuration.

otherwise, set up a stream handler logger on stderr (by default, if no
stream is provided).

if is_serve == True, we configure a special log format as expected by
the borg client log message interceptor.
"""
global configured
err_msg = None
Expand All @@ -90,21 +87,12 @@ def setup_logging(stream=None, conf_fname=None, env_var="BORG_LOGGING_CONF", lev
# if we did not / not successfully load a logging configuration, fallback to this:
logger = logging.getLogger("")
handler = logging.StreamHandler(stream)
if is_serve and not json:
fmt = "$LOG %(levelname)s %(name)s Remote: %(message)s"
else:
fmt = "%(message)s"
fmt = "%(message)s"
formatter = JsonFormatter(fmt) if json else logging.Formatter(fmt)
handler.setFormatter(formatter)
borg_logger = logging.getLogger("borg")
borg_logger.formatter = formatter
borg_logger.json = json
if configured and logger.handlers:
# The RepositoryServer can call setup_logging a second time to adjust the output
# mode from text-ish is_serve to json is_serve.
# Thus, remove the previously installed handler, if any.
logger.handlers[0].close()
logger.handlers.clear()
logger.addHandler(handler)
logger.setLevel(level.upper())
configured = True
Expand Down
Loading