فهرست منبع

determine log level from the logger, so it works with logging.conf also

Thomas Waldmann 9 سال پیش
والد
کامیت
229512b6f5
2فایلهای تغییر یافته به همراه7 افزوده شده و 7 حذف شده
  1. 6 4
      borg/remote.py
  2. 1 3
      borg/testsuite/repository.py

+ 6 - 4
borg/remote.py

@@ -1,5 +1,6 @@
 import errno
 import fcntl
+import logging
 import os
 import select
 import shlex
@@ -164,12 +165,13 @@ class RemoteRepository:
         opts = []
         if args is not None:
             opts.append('--umask=%03o' % args.umask)
-            if args.log_level == 'debug':
+            root_logger = logging.getLogger()
+            if root_logger.isEnabledFor(logging.DEBUG):
                 opts.append('--debug')
-            elif args.log_level == 'info':
+            elif root_logger.isEnabledFor(logging.INFO):
                 opts.append('--info')
-            elif args.log_level == 'warning':
-                pass  # is default
+            elif root_logger.isEnabledFor(logging.WARNING):
+                pass  # warning is default
             else:
                 raise ValueError('log level missing, fix this code')
         if testing:

+ 1 - 3
borg/testsuite/repository.py

@@ -337,13 +337,11 @@ class RemoteRepositoryTestCase(RepositoryTestCase):
     def test_borg_cmd(self):
         class MockArgs:
             remote_path = 'borg'
-            log_level = 'warning'
             umask = 0o077
 
         assert self.repository.borg_cmd(None, testing=True) == [sys.executable, '-m', 'borg.archiver', 'serve' ]
         args = MockArgs()
-        assert self.repository.borg_cmd(args, testing=False) == ['borg', 'serve', '--umask=077']
-        args.log_level = 'info'
+        # note: test logger is on info log level, so --info gets added automagically
         assert self.repository.borg_cmd(args, testing=False) == ['borg', 'serve', '--umask=077', '--info']
         args.remote_path = 'borg-0.28.2'
         assert self.repository.borg_cmd(args, testing=False) == ['borg-0.28.2', 'serve', '--umask=077', '--info']