Skip to content

Commit 6641166

Browse files
author
speruri
committed
Add comprehensive debug logging for TLV detection
Log TLVs, types, and SSL detection logic to diagnose why SSL TLVs aren't being found Signed-off-by: speruri <surya.srikar.peruri@zalando.de>
1 parent 1a6ae0c commit 6641166

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

proxylistener/proxylistener.go

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,11 +109,15 @@ func (tl *tlvExtractorListener) Accept() (net.Conn, error) {
109109
if pconn, ok := conn.(*proxyproto.Conn); ok {
110110
log.Printf("[tlvExtractorListener] Got proxyproto.Conn")
111111
if header := pconn.ProxyHeader(); header != nil {
112-
log.Printf("[tlvExtractorListener] Got ProxyHeader")
112+
log.Printf("[tlvExtractorListener] Got ProxyHeader, Version=%d", header.Version)
113113
tlvs, err := header.TLVs()
114114
if err != nil {
115115
log.Printf("[tlvExtractorListener] Error getting TLVs: %v", err)
116116
} else {
117+
log.Printf("[tlvExtractorListener] TLVs count: %d", len(tlvs))
118+
for i, tlv := range tlvs {
119+
log.Printf("[tlvExtractorListener] TLV[%d]: Type=%d, Len=%d", i, tlv.Type, len(tlv.Value))
120+
}
117121
ssl := hasTLVSSL(tlvs)
118122
key := conn.RemoteAddr().String() + "|" + conn.LocalAddr().String()
119123
log.Printf("[tlvExtractorListener] Storing SSL=%v for key=%s", ssl, key)
@@ -179,10 +183,13 @@ func (c *tlvCacheCleanupConn) SetWriteDeadline(t time.Time) error {
179183
// hasTLVSSL checks if the TLV list contains SSL information (type 0x20).
180184
func hasTLVSSL(tlvs []proxyproto.TLV) bool {
181185
for _, tlv := range tlvs {
186+
log.Printf("[hasTLVSSL] Checking TLV Type=%d (looking for 32=0x20)", tlv.Type)
182187
if tlv.Type == 0x20 { // PP2_TYPE_SSL
188+
log.Printf("[hasTLVSSL] Found SSL TLV!")
183189
return true
184190
}
185191
}
192+
log.Printf("[hasTLVSSL] No SSL TLV found in %d TLVs", len(tlvs))
186193
return false
187194
}
188195

0 commit comments

Comments
 (0)