diff options
| -rw-r--r-- | modules/zfssnap/default.nix | 6 | ||||
| -rw-r--r-- | modules/zfssnap/zfssnap.py | 16 |
2 files changed, 8 insertions, 14 deletions
diff --git a/modules/zfssnap/default.nix b/modules/zfssnap/default.nix index 9ff0157b..35eea776 100644 --- a/modules/zfssnap/default.nix +++ b/modules/zfssnap/default.nix | |||
| @@ -11,7 +11,7 @@ let | |||
| 11 | 11 | ||
| 12 | buildInputs = with pkgs; [makeWrapper]; | 12 | buildInputs = with pkgs; [makeWrapper]; |
| 13 | 13 | ||
| 14 | python = pkgs.python39.withPackages (ps: with ps; [pyxdg pytimeparse dateutil systemd]); | 14 | python = pkgs.python39.withPackages (ps: with ps; [pyxdg pytimeparse dateutil]); |
| 15 | 15 | ||
| 16 | buildPhase = '' | 16 | buildPhase = '' |
| 17 | substitute $src zfssnap \ | 17 | substitute $src zfssnap \ |
| @@ -67,7 +67,7 @@ in { | |||
| 67 | before = [ "zfssnap-prune.service" ]; | 67 | before = [ "zfssnap-prune.service" ]; |
| 68 | serviceConfig = { | 68 | serviceConfig = { |
| 69 | Type = "oneshot"; | 69 | Type = "oneshot"; |
| 70 | ExecStart = "${zfssnap}/bin/zfssnap --no-stderr -vv"; | 70 | ExecStart = "${zfssnap}/bin/zfssnap -vv"; |
| 71 | }; | 71 | }; |
| 72 | }; | 72 | }; |
| 73 | systemd.services."zfssnap-prune" = { | 73 | systemd.services."zfssnap-prune" = { |
| @@ -78,7 +78,7 @@ in { | |||
| 78 | ExecStart = let | 78 | ExecStart = let |
| 79 | mkSectionName = name: strings.escape [ "[" "]" ] (strings.toUpper name); | 79 | mkSectionName = name: strings.escape [ "[" "]" ] (strings.toUpper name); |
| 80 | zfssnapConfig = generators.toINI { inherit mkSectionName; } cfg.config; | 80 | zfssnapConfig = generators.toINI { inherit mkSectionName; } cfg.config; |
| 81 | in "${zfssnap}/bin/zfssnap --no-stderr -vv prune --config=${pkgs.writeText "zfssnap.ini" zfssnapConfig}"; | 81 | in "${zfssnap}/bin/zfssnap -vv prune --config=${pkgs.writeText "zfssnap.ini" zfssnapConfig}"; |
| 82 | }; | 82 | }; |
| 83 | }; | 83 | }; |
| 84 | 84 | ||
diff --git a/modules/zfssnap/zfssnap.py b/modules/zfssnap/zfssnap.py index e411168c..9e8881d0 100644 --- a/modules/zfssnap/zfssnap.py +++ b/modules/zfssnap/zfssnap.py | |||
| @@ -25,8 +25,6 @@ from functools import cache | |||
| 25 | 25 | ||
| 26 | from math import floor | 26 | from math import floor |
| 27 | 27 | ||
| 28 | from systemd import journal | ||
| 29 | |||
| 30 | 28 | ||
| 31 | @cache | 29 | @cache |
| 32 | def _now(): | 30 | def _now(): |
| @@ -217,7 +215,11 @@ def autosnap(): | |||
| 217 | def main(): | 215 | def main(): |
| 218 | global logger | 216 | global logger |
| 219 | logger = logging.getLogger(__name__) | 217 | logger = logging.getLogger(__name__) |
| 220 | systemd_handler = journal.JournalHandler() | 218 | console_handler = logging.StreamHandler() |
| 219 | console_handler.setFormatter( logging.Formatter('[%(levelname)s](%(name)s): %(message)s') ) | ||
| 220 | if sys.stderr.isatty(): | ||
| 221 | console_handler.setFormatter( logging.Formatter('%(asctime)s [%(levelname)s](%(name)s): %(message)s') ) | ||
| 222 | logger.addHandler(console_handler) | ||
| 221 | 223 | ||
| 222 | # log uncaught exceptions | 224 | # log uncaught exceptions |
| 223 | def log_exceptions(type, value, tb): | 225 | def log_exceptions(type, value, tb): |
| @@ -230,7 +232,6 @@ def main(): | |||
| 230 | 232 | ||
| 231 | parser = argparse.ArgumentParser(prog='zfssnap') | 233 | parser = argparse.ArgumentParser(prog='zfssnap') |
| 232 | parser.add_argument('--verbose', '-v', action='count', default=0) | 234 | parser.add_argument('--verbose', '-v', action='count', default=0) |
| 233 | parser.add_argument('--no-stderr', dest='stderr', action='store_false', default=True) | ||
| 234 | subparsers = parser.add_subparsers() | 235 | subparsers = parser.add_subparsers() |
| 235 | parser.set_defaults(cmd=autosnap) | 236 | parser.set_defaults(cmd=autosnap) |
| 236 | rename_parser = subparsers.add_parser('rename') | 237 | rename_parser = subparsers.add_parser('rename') |
| @@ -242,13 +243,6 @@ def main(): | |||
| 242 | prune_parser.set_defaults(cmd=prune) | 243 | prune_parser.set_defaults(cmd=prune) |
| 243 | args = parser.parse_args() | 244 | args = parser.parse_args() |
| 244 | 245 | ||
| 245 | if args.stderr: | ||
| 246 | console_handler = logging.StreamHandler() | ||
| 247 | console_handler.setFormatter( logging.Formatter('[%(levelname)s](%(name)s): %(message)s') ) | ||
| 248 | if sys.stderr.isatty(): | ||
| 249 | console_handler.setFormatter( logging.Formatter('%(asctime)s [%(levelname)s](%(name)s): %(message)s') ) | ||
| 250 | logger.addHandler(console_handler) | ||
| 251 | |||
| 252 | if args.verbose <= 0: | 246 | if args.verbose <= 0: |
| 253 | logger.setLevel(logging.WARNING) | 247 | logger.setLevel(logging.WARNING) |
| 254 | elif args.verbose <= 1: | 248 | elif args.verbose <= 1: |
