nix-builder-autoscaler/buildbot-ext/buildbot_autoscale_ext/telemetry.py

20 lines
592 B
Python

from __future__ import annotations
import logging
def get_logger(name: str) -> logging.Logger:
return logging.getLogger(name)
def event(logger: logging.Logger, level: int, name: str, **fields: object) -> None:
logger.log(level, "%s %s", name, " ".join(f"{key}={value!r}" for key, value in fields.items()))
def phase_message(phase: str | None, reason: str | None) -> str:
details: list[str] = []
if phase:
details.append(f"phase={phase}")
if reason:
details.append(f"reason={reason}")
return " ".join(details) if details else "no daemon details"