01|别再只会 print 了:Python 可观测性从日志到链路追踪
你可能正在经历的线上现场
服务明明“偶尔失败”,但日志只有一句:request failed。 用户说接口慢,你却只能猜是数据库、第三方 API,还是代码本身。
这不是代码写得差,而是系统没有可观测性。
本文目标
- 用最小成本把 Python 服务升级为“可定位、可追踪、可回放”。
- 落地三件事:结构化日志、请求 ID、耗时埋点。
1. 从“文本日志”升级到“结构化日志”
先不要急着上 ELK,先把日志格式打对。
import json
import logging
import time
from typing import Any
logging.basicConfig(level=logging.INFO, format=\”%(message)s\”)
def log_event(event: str, **kwargs: Any) –> None:
payload = {
\”ts\”: round(time.time(), 3),




