# L5a: Observability

**Module**: M5 Production  
**Files**: starter.py, solution.py

## Objective

Trace every tool call + LLM completion to SQLite.

## Concepts

Refer to the corresponding module for full concept explanations.

## Starter

```bash
cd course/labs/l5-observability/
# Open starter file and fill in the TODOs
```

## Checkpoints

1. Define SQLite schema for tool_calls and llm_completions
2. Implement ObservabilityTracker class
3. Log tool calls with params, result, duration
4. Log LLM completions with token counts and cost
5. Generate session summary report

## Solution

Compare against the solution file after attempting the starter.
