Latency Profiling in Python: From Code Bottlenecks to Observability