#!/usr/bin/env python3
"""Append a JSON status line to logs/status.log. Ensure dir exists."""
import datetime, json, os, sys

UTC = datetime.timezone.utc
def log_status(payload: dict):
    os.makedirs(os.path.dirname(os.path.abspath(__file__)) + "/../logs", exist_ok=True)
    line = json.dumps({"ts": datetime.datetime.now(UTC).isoformat().replace("+00:00", "Z"),
                       "host": os.uname().nodename, **payload}, sort_keys=True)
    with open(os.path.dirname(os.path.abspath(__file__)) + "/../logs/status.log", "a") as f:
        f.write(line + "\n")
    return line

if __name__ == "__main__":
    payload = json.loads(sys.argv[1]) if len(sys.argv) > 1 else {}
    print(log_status(payload))
