From b7fe4ebb91e1475bfb69e3a91ba0f20e41a0ad36 Mon Sep 17 00:00:00 2001 From: Lucas Armand Date: Fri, 7 Nov 2025 10:02:39 -0800 Subject: [PATCH] Obfuscate mtoken in logs --- lib/metrics.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/lib/metrics.py b/lib/metrics.py index 93b166d..6fb0fce 100644 --- a/lib/metrics.py +++ b/lib/metrics.py @@ -234,17 +234,25 @@ class Metrics: async def send_data(report_addr: str) -> bool: data = compute_autoscaler_data() - full_path = report_addr.rstrip("/") + "/worker_status/" + log_data = asdict(data) + def obfuscate(secret: str) -> str: + if secret is None: + return "" + return secret[:7] if len(secret) > 7 else ("*" * len(secret)) + + log_data["mtoken"] = obfuscate(log_data.get("mtoken")) log.debug( "\n".join( [ "#" * 60, f"sending data to autoscaler", - f"{json.dumps((asdict(data)), indent=2)}", + f"{json.dumps(log_data, indent=2)}", "#" * 60, ] ) ) + + full_path = report_addr.rstrip("/") + "/worker_status/" for attempt in range(1, 4): try: session = await self.http()