15 lines
441 B
Python
15 lines
441 B
Python
"""Structured JSON logging to stderr (spec §12.2)."""
|
|
import json
|
|
import sys
|
|
from datetime import datetime, timezone
|
|
|
|
|
|
def log(event: str, level: str = "info", **fields) -> None:
|
|
record = {
|
|
"timestamp": datetime.now(tz=timezone.utc).strftime("%Y-%m-%dT%H:%M:%SZ"),
|
|
"level": level,
|
|
"module": "aissurance",
|
|
"event": event,
|
|
**fields,
|
|
}
|
|
print(json.dumps(record), file=sys.stderr, flush=True)
|