diff --git a/src/restic/size.py b/src/restic/size.py index 344e7c4..0619737 100644 --- a/src/restic/size.py +++ b/src/restic/size.py @@ -1,6 +1,9 @@ +import json +import logging import subprocess import click +from rich.logging import RichHandler from restic.console import logger from restic.loki import send_to_loki @@ -10,7 +13,8 @@ def get_size(loki_url: str = None): cmd = ['restic', 'stats', '--mode', 'raw-data', '--json'] result = subprocess.run(cmd, capture_output=True, text=True) - logger.info(result.stdout) + data = json.loads(result.stdout) + logger.info(f'Total size: {data["total_size"] / 10**6:.2f} MB, {data["snapshots_count"]} snapshots') if loki_url is not None: send_to_loki(loki_url, result.stdout, backup='size') @@ -23,4 +27,14 @@ def main(loki_url: str = None): if __name__ == '__main__': + import logging + + from rich.logging import RichHandler + + from restic.console import console + + logging.basicConfig( + level='DEBUG', format='%(message)s', handlers=[RichHandler(markup=True, console=console)] + ) + main()