diff --git a/.gitignore b/.gitignore index 78eaa89..d303b97 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ *.backup *.backup-* config/mail-status.json +config/mail-status.json +telemetry/__pycache__/ diff --git a/telemetry/__init__.py b/telemetry/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/telemetry/common.py b/telemetry/common.py new file mode 100644 index 0000000..a3ba65b --- /dev/null +++ b/telemetry/common.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +from pathlib import Path +from datetime import datetime, timezone +import json + +def timestamp(): + return datetime.now(timezone.utc).isoformat() + +def write_json(path, payload): + path = Path(path) + path.parent.mkdir(parents=True, exist_ok=True) + + payload["generated_at"] = timestamp() + + tmp = path.with_suffix(".tmp") + tmp.write_text(json.dumps(payload, indent=2) + "\n") + tmp.replace(path)