Task · OPN-0065

Redact credential-bearing URLs from exporter self-logs

Description

The exporter self-log handler flattens arbitrary structured attributes unchanged and buffers startup records until the OTLP log pipeline binds. Explicit endpoint values are logged before that bind and URL userinfo or sensitive query parameters survive endpoint parsing. An operator-supplied credential or bearer token in an endpoint can therefore be forwarded to the remote log backend as structured metadata.

Acceptance Criteria

Definition of Done

Implementation Plan

Add a production-sequence regression that buffers an endpoint-bearing startup record, then centralize self-log attribute sanitization at record construction so both pending and live submissions cross the same boundary. Review URL userinfo and sensitive query keys without treating all non-URL diagnostics as secrets.

Final Summary

Fixed by 1fd32f4d. Exporter self-log URL attributes now redact userinfo and sensitive query values before either startup buffering or live export while retaining scheme, host, path and safe query context. The regression failed before the fix and passed after it; no fixture credential appeared in output or generated artifacts. Integrated just check passed. CodeRabbit completed one pass with zero findings.

View the source file on GitHub