opensearch-project / opensearch-project/data-prepper
[FEATURE] Add enhanced logging for TLS handshake failures in mutual_tls authentication
@divakarsingh is already working on this.
Since Jun 30, 2026.
- Dominant language
- Java
- Stars
- 374
- Forks
- 354
- Avg merge
- 3d 18h
- Merged PRs (30d)
- 8
Description
Is your feature request related to a problem? Please describe.
When mutual_tls authentication is enabled (#6916), operators cannot easily distinguish
TLS handshake failures caused by client certificate rejections from network-level connection
issues. Armeria logs handshake failures at WARN level with minimal context.
Describe the solution you'd like
Add structured logging for TLS handshake failures when mutual_tls is configured, including:
- Client IP address
- Failure reason (e.g., "certificate not trusted", "no client certificate presented",
"certificate expired") - Subject DN of the rejected certificate (if available)
This would allow operators to quickly identify:
- Clients connecting without certificates
- Clients using expired certificates
- Clients signed by an untrusted CA
Implementation could use Armeria's ServerBuilder.childChannelPipelineCustomizer() to add
a Netty handler that listens for SslHandshakeCompletionEvent failures and emits a
structured log with the relevant details.
Additional context
Identified during review of #6916. Armeria's default WARN logging provides basic visibility
but does not include enough context to diagnose client-side misconfigurations.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.