Create child spans for each filter execution per phase with filter name, duration, and result.
Requirements
- Child span per filter per phase (request_headers, request_body, response_headers, response_body)
- Span name:
filter:{filter_name}:{phase}
- Attributes: filter name, phase, result (continue/reject/error)
- Duration covers filter execution time
- Nested correctly under root request span
Implementation Notes
- Instrumentation in filter pipeline executor, not in individual filters
- Minimal overhead when tracing is disabled
Parent epic: #10
Create child spans for each filter execution per phase with filter name, duration, and result.
Requirements
filter:{filter_name}:{phase}Implementation Notes
Parent epic: #10