Error Handling & Logging¶ When to catch vs. propagate exceptions Custom exception hierarchies Structured logging and log levels