Skip to content

Commit bee543d

Browse files
committed
🌋 api, cred, service: log bugs at error level
1 parent 71bf356 commit bee543d

File tree

9 files changed

+43
-43
lines changed

9 files changed

+43
-43
lines changed

api/api.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -347,7 +347,7 @@ func newRealIPMiddleware(logger *zap.Logger, trustedProxies []netip.Prefix, real
347347
if v := r.Header[realIPHeaderKey]; len(v) > 0 {
348348
proxyAddrPort, err := netip.ParseAddrPort(r.RemoteAddr)
349349
if err != nil {
350-
logger.Warn("Failed to parse HTTP request remote address",
350+
logger.Error("Failed to parse HTTP request remote address",
351351
zap.String("remoteAddr", r.RemoteAddr),
352352
zap.Error(err),
353353
)

cred/manager.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ func (s *ManagedServer) dequeueSave(ctx context.Context) {
140140
// which takes the write lock. So it is safe to take just the read lock here.
141141
s.mu.RLock()
142142
if err := s.saveToFile(); err != nil {
143-
s.logger.Warn("Failed to save credentials", zap.Error(err))
143+
s.logger.Error("Failed to save credentials", zap.Error(err))
144144
}
145145
s.mu.RUnlock()
146146
}
@@ -347,7 +347,7 @@ func (m *Manager) Servers() (int, iter.Seq[*ManagedServer]) {
347347
func (m *Manager) ReloadAll() {
348348
for name, s := range m.servers {
349349
if err := s.LoadFromFile(); err != nil {
350-
m.logger.Warn("Failed to reload credentials", zap.String("server", name), zap.Error(err))
350+
m.logger.Error("Failed to reload credentials", zap.String("server", name), zap.Error(err))
351351
continue
352352
}
353353
m.logger.Info("Reloaded credentials", zap.String("server", name))

service/reload_unix.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ func newReloadNotifier(logger *zap.Logger, credmgr *cred.Manager, tlsCertStore *
2525
for _, s := range cms {
2626
name := s.Name()
2727
if err := s.LoadFromFile(); err != nil {
28-
logger.Warn("Failed to reload server credentials", zap.String("server", name), zap.Error(err))
28+
logger.Error("Failed to reload server credentials", zap.String("server", name), zap.Error(err))
2929
continue
3030
}
3131
logger.Info("Reloaded server credentials", zap.String("server", name))
@@ -38,7 +38,7 @@ func newReloadNotifier(logger *zap.Logger, credmgr *cred.Manager, tlsCertStore *
3838
for _, certList := range certLists {
3939
name := certList.Config().Name
4040
if err := certList.Reload(); err != nil {
41-
logger.Warn("Failed to reload TLS certificate list", zap.String("certList", name), zap.Error(err))
41+
logger.Error("Failed to reload TLS certificate list", zap.String("certList", name), zap.Error(err))
4242
continue
4343
}
4444
logger.Info("Reloaded TLS certificate list", zap.String("certList", name))

service/tcp.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ func (s *TCPRelay) Start(ctx context.Context) error {
105105
if errors.Is(err, os.ErrDeadlineExceeded) {
106106
break
107107
}
108-
lnc.logger.Warn("Failed to accept TCP connection", zap.Error(err))
108+
lnc.logger.Error("Failed to accept TCP connection", zap.Error(err))
109109
continue
110110
}
111111

@@ -202,7 +202,7 @@ func (s *TCPRelay) handleConn(ctx context.Context, lnc *tcpRelayListener, client
202202
req.Payload = make([]byte, lnc.initialPayloadWaitBufferSize)
203203

204204
if err = clientConn.SetReadDeadline(time.Now().Add(lnc.initialPayloadWaitTimeout)); err != nil {
205-
logger.Warn("Failed to set read deadline to initial payload wait timeout", zap.Error(err))
205+
logger.Error("Failed to set read deadline to initial payload wait timeout", zap.Error(err))
206206
return
207207
}
208208

@@ -235,7 +235,7 @@ func (s *TCPRelay) handleConn(ctx context.Context, lnc *tcpRelayListener, client
235235
req.Payload = req.Payload[:payloadLength]
236236

237237
if err = clientConn.SetReadDeadline(time.Time{}); err != nil {
238-
logger.Warn("Failed to reset read deadline", zap.Error(err))
238+
logger.Error("Failed to reset read deadline", zap.Error(err))
239239
return
240240
}
241241
}
@@ -293,7 +293,7 @@ func (s *TCPRelay) Stop() error {
293293
for i := range s.listeners {
294294
lnc := &s.listeners[i]
295295
if err := lnc.listener.SetDeadline(conn.ALongTimeAgo); err != nil {
296-
lnc.logger.Warn("Failed to set deadline on listener", zap.Error(err))
296+
lnc.logger.Error("Failed to set deadline on listener", zap.Error(err))
297297
}
298298
}
299299

@@ -302,7 +302,7 @@ func (s *TCPRelay) Stop() error {
302302
for i := range s.listeners {
303303
lnc := &s.listeners[i]
304304
if err := lnc.listener.Close(); err != nil {
305-
lnc.logger.Warn("Failed to close listener", zap.Error(err))
305+
lnc.logger.Error("Failed to close listener", zap.Error(err))
306306
}
307307
}
308308

service/udp_nat.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,7 @@ func (s *UDPNATRelay) recvFromServerConnGeneric(ctx context.Context, lnc *udpRel
248248
if !bytes.Equal(entry.clientPktinfoCache, cmsg) {
249249
m, err := conn.ParseSocketControlMessage(cmsg)
250250
if err != nil {
251-
lnc.logger.Warn("Failed to parse pktinfo control message from serverConn",
251+
lnc.logger.Error("Failed to parse pktinfo control message from serverConn",
252252
zap.Stringer("clientAddress", clientAddrPort),
253253
zap.Stringer("targetAddress", &queuedPacket.targetAddr),
254254
zap.Error(err),
@@ -337,7 +337,7 @@ func (s *UDPNATRelay) recvFromServerConnGeneric(ctx context.Context, lnc *udpRel
337337

338338
err = natConn.SetReadDeadline(time.Now().Add(lnc.natTimeout))
339339
if err != nil {
340-
lnc.logger.Warn("Failed to set read deadline on natConn",
340+
lnc.logger.Error("Failed to set read deadline on natConn",
341341
zap.Stringer("clientAddress", clientAddrPort),
342342
zap.Stringer("targetAddress", &queuedPacket.targetAddr),
343343
zap.String("client", clientInfo.Name),
@@ -476,7 +476,7 @@ func (s *UDPNATRelay) relayServerConnToNatConnGeneric(ctx context.Context, uplin
476476

477477
err = uplink.natConn.SetReadDeadline(time.Now().Add(uplink.natTimeout))
478478
if err != nil {
479-
uplink.logger.Warn("Failed to set read deadline on natConn",
479+
uplink.logger.Error("Failed to set read deadline on natConn",
480480
zap.Stringer("clientAddress", uplink.clientAddrPort),
481481
zap.String("client", uplink.clientName),
482482
zap.Duration("natTimeout", uplink.natTimeout),
@@ -617,7 +617,7 @@ func (s *UDPNATRelay) Stop() error {
617617
for i := range s.listeners {
618618
lnc := &s.listeners[i]
619619
if err := lnc.serverConn.SetReadDeadline(conn.ALongTimeAgo); err != nil {
620-
lnc.logger.Warn("Failed to set read deadline on serverConn", zap.Error(err))
620+
lnc.logger.Error("Failed to set read deadline on serverConn", zap.Error(err))
621621
}
622622
}
623623

@@ -633,7 +633,7 @@ func (s *UDPNATRelay) Stop() error {
633633
}
634634

635635
if err := natConn.SetReadDeadline(conn.ALongTimeAgo); err != nil {
636-
entry.logger.Warn("Failed to set read deadline on natConn",
636+
entry.logger.Error("Failed to set read deadline on natConn",
637637
zap.Stringer("clientAddress", clientAddrPort),
638638
zap.Error(err),
639639
)
@@ -648,7 +648,7 @@ func (s *UDPNATRelay) Stop() error {
648648
for i := range s.listeners {
649649
lnc := &s.listeners[i]
650650
if err := lnc.serverConn.Close(); err != nil {
651-
lnc.logger.Warn("Failed to close serverConn", zap.Error(err))
651+
lnc.logger.Error("Failed to close serverConn", zap.Error(err))
652652
}
653653
}
654654

service/udp_nat_mmsg.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -140,14 +140,14 @@ func (s *UDPNATRelay) recvFromServerConnRecvmmsg(ctx context.Context, lnc *udpRe
140140
queuedPacket := qpvec[i]
141141

142142
if msg.Msghdr.Controllen == 0 {
143-
lnc.logger.Warn("Skipping packet with no control message from serverConn")
143+
lnc.logger.Error("Skipping packet with no control message from serverConn")
144144
s.putQueuedPacket(queuedPacket)
145145
continue
146146
}
147147

148148
clientAddrPort, err := conn.SockaddrToAddrPort(msg.Msghdr.Name, msg.Msghdr.Namelen)
149149
if err != nil {
150-
lnc.logger.Warn("Failed to parse sockaddr of packet from serverConn", zap.Error(err))
150+
lnc.logger.Error("Failed to parse sockaddr of packet from serverConn", zap.Error(err))
151151
s.putQueuedPacket(queuedPacket)
152152
continue
153153
}
@@ -201,7 +201,7 @@ func (s *UDPNATRelay) recvFromServerConnRecvmmsg(ctx context.Context, lnc *udpRe
201201
if !bytes.Equal(entry.clientPktinfoCache, cmsg) {
202202
m, err := conn.ParseSocketControlMessage(cmsg)
203203
if err != nil {
204-
lnc.logger.Warn("Failed to parse pktinfo control message from serverConn",
204+
lnc.logger.Error("Failed to parse pktinfo control message from serverConn",
205205
zap.Stringer("clientAddress", clientAddrPort),
206206
zap.Stringer("targetAddress", &queuedPacket.targetAddr),
207207
zap.Error(err),
@@ -289,7 +289,7 @@ func (s *UDPNATRelay) recvFromServerConnRecvmmsg(ctx context.Context, lnc *udpRe
289289

290290
err = natConn.SetReadDeadline(time.Now().Add(lnc.natTimeout))
291291
if err != nil {
292-
lnc.logger.Warn("Failed to set read deadline on natConn",
292+
lnc.logger.Error("Failed to set read deadline on natConn",
293293
zap.Stringer("clientAddress", clientAddrPort),
294294
zap.Stringer("targetAddress", &queuedPacket.targetAddr),
295295
zap.String("client", clientInfo.Name),
@@ -498,7 +498,7 @@ main:
498498
}
499499

500500
if err := uplink.natConn.SetReadDeadline(time.Now().Add(uplink.natTimeout)); err != nil {
501-
uplink.logger.Warn("Failed to set read deadline on natConn",
501+
uplink.logger.Error("Failed to set read deadline on natConn",
502502
zap.Stringer("clientAddress", uplink.clientAddrPort),
503503
zap.String("client", uplink.clientName),
504504
zap.Duration("natTimeout", uplink.natTimeout),
@@ -597,7 +597,7 @@ func (s *UDPNATRelay) relayNatConnToServerConnSendmmsg(downlink natDownlinkMmsg)
597597

598598
packetSourceAddrPort, err := conn.SockaddrToAddrPort(msg.Msghdr.Name, msg.Msghdr.Namelen)
599599
if err != nil {
600-
downlink.logger.Warn("Failed to parse sockaddr of packet from natConn",
600+
downlink.logger.Error("Failed to parse sockaddr of packet from natConn",
601601
zap.Stringer("clientAddress", downlink.clientAddrPort),
602602
zap.String("client", downlink.clientName),
603603
zap.Error(err),

service/udp_session.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -294,7 +294,7 @@ func (s *UDPSessionRelay) recvFromServerConnGeneric(ctx context.Context, lnc *ud
294294
if updateClientAddrPort || updateClientPktinfo {
295295
m, err := conn.ParseSocketControlMessage(cmsg)
296296
if err != nil {
297-
lnc.logger.Warn("Failed to parse pktinfo control message from serverConn",
297+
lnc.logger.Error("Failed to parse pktinfo control message from serverConn",
298298
zap.Stringer("clientAddress", &queuedPacket.clientAddrPort),
299299
zap.String("username", entry.username),
300300
zap.Uint64("clientSessionID", csid),
@@ -392,7 +392,7 @@ func (s *UDPSessionRelay) recvFromServerConnGeneric(ctx context.Context, lnc *ud
392392

393393
err = natConn.SetReadDeadline(time.Now().Add(lnc.natTimeout))
394394
if err != nil {
395-
lnc.logger.Warn("Failed to set read deadline on natConn",
395+
lnc.logger.Error("Failed to set read deadline on natConn",
396396
zap.Stringer("clientAddress", &queuedPacket.clientAddrPort),
397397
zap.String("username", entry.username),
398398
zap.Uint64("clientSessionID", csid),
@@ -548,7 +548,7 @@ func (s *UDPSessionRelay) relayServerConnToNatConnGeneric(ctx context.Context, u
548548

549549
err = uplink.natConn.SetReadDeadline(time.Now().Add(uplink.natTimeout))
550550
if err != nil {
551-
uplink.logger.Warn("Failed to set read deadline on natConn",
551+
uplink.logger.Error("Failed to set read deadline on natConn",
552552
zap.Stringer("clientAddress", &queuedPacket.clientAddrPort),
553553
zap.String("username", uplink.username),
554554
zap.Uint64("clientSessionID", uplink.csid),
@@ -706,7 +706,7 @@ func (s *UDPSessionRelay) Stop() error {
706706
for i := range s.listeners {
707707
lnc := &s.listeners[i]
708708
if err := lnc.serverConn.SetReadDeadline(conn.ALongTimeAgo); err != nil {
709-
lnc.logger.Warn("Failed to set read deadline on serverConn", zap.Error(err))
709+
lnc.logger.Error("Failed to set read deadline on serverConn", zap.Error(err))
710710
}
711711
}
712712

@@ -722,7 +722,7 @@ func (s *UDPSessionRelay) Stop() error {
722722
}
723723

724724
if err := natConn.SetReadDeadline(conn.ALongTimeAgo); err != nil {
725-
entry.logger.Warn("Failed to set read deadline on natConn",
725+
entry.logger.Error("Failed to set read deadline on natConn",
726726
zap.Uint64("clientSessionID", csid),
727727
zap.Error(err),
728728
)
@@ -737,7 +737,7 @@ func (s *UDPSessionRelay) Stop() error {
737737
for i := range s.listeners {
738738
lnc := &s.listeners[i]
739739
if err := lnc.serverConn.Close(); err != nil {
740-
lnc.logger.Warn("Failed to close serverConn", zap.Error(err))
740+
lnc.logger.Error("Failed to close serverConn", zap.Error(err))
741741
}
742742
}
743743

service/udp_session_mmsg.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -142,14 +142,14 @@ func (s *UDPSessionRelay) recvFromServerConnRecvmmsg(ctx context.Context, lnc *u
142142
queuedPacket := qpvec[i]
143143

144144
if msg.Msghdr.Controllen == 0 {
145-
lnc.logger.Warn("Skipping packet with no control message from serverConn")
145+
lnc.logger.Error("Skipping packet with no control message from serverConn")
146146
s.putQueuedPacket(queuedPacket)
147147
continue
148148
}
149149

150150
queuedPacket.clientAddrPort, err = conn.SockaddrToAddrPort(msg.Msghdr.Name, msg.Msghdr.Namelen)
151151
if err != nil {
152-
lnc.logger.Warn("Failed to parse sockaddr of packet from serverConn", zap.Error(err))
152+
lnc.logger.Error("Failed to parse sockaddr of packet from serverConn", zap.Error(err))
153153
s.putQueuedPacket(queuedPacket)
154154
continue
155155
}
@@ -235,7 +235,7 @@ func (s *UDPSessionRelay) recvFromServerConnRecvmmsg(ctx context.Context, lnc *u
235235
if updateClientAddrPort || updateClientPktinfo {
236236
m, err := conn.ParseSocketControlMessage(cmsg)
237237
if err != nil {
238-
lnc.logger.Warn("Failed to parse pktinfo control message from serverConn",
238+
lnc.logger.Error("Failed to parse pktinfo control message from serverConn",
239239
zap.Stringer("clientAddress", &queuedPacket.clientAddrPort),
240240
zap.String("username", entry.username),
241241
zap.Uint64("clientSessionID", csid),
@@ -332,7 +332,7 @@ func (s *UDPSessionRelay) recvFromServerConnRecvmmsg(ctx context.Context, lnc *u
332332

333333
err = natConn.SetReadDeadline(time.Now().Add(lnc.natTimeout))
334334
if err != nil {
335-
lnc.logger.Warn("Failed to set read deadline on natConn",
335+
lnc.logger.Error("Failed to set read deadline on natConn",
336336
zap.Stringer("clientAddress", &queuedPacket.clientAddrPort),
337337
zap.String("username", entry.username),
338338
zap.Uint64("clientSessionID", csid),
@@ -557,7 +557,7 @@ main:
557557
}
558558

559559
if err := uplink.natConn.SetReadDeadline(time.Now().Add(uplink.natTimeout)); err != nil {
560-
uplink.logger.Warn("Failed to set read deadline on natConn",
560+
uplink.logger.Error("Failed to set read deadline on natConn",
561561
zap.Stringer("clientAddress", &queuedPacket.clientAddrPort),
562562
zap.String("username", uplink.username),
563563
zap.Uint64("clientSessionID", uplink.csid),
@@ -675,7 +675,7 @@ func (s *UDPSessionRelay) relayNatConnToServerConnSendmmsg(downlink sessionDownl
675675

676676
packetSourceAddrPort, err := conn.SockaddrToAddrPort(msg.Msghdr.Name, msg.Msghdr.Namelen)
677677
if err != nil {
678-
downlink.logger.Warn("Failed to parse sockaddr of packet from natConn",
678+
downlink.logger.Error("Failed to parse sockaddr of packet from natConn",
679679
zap.Stringer("clientAddress", clientAddrPort),
680680
zap.String("username", downlink.username),
681681
zap.Uint64("clientSessionID", downlink.csid),

service/udp_transparent_linux.go

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,7 @@ func (s *UDPTransparentRelay) recvFromServerConnRecvmmsg(ctx context.Context, ln
218218

219219
clientAddrPort, err := conn.SockaddrToAddrPort(msg.Msghdr.Name, msg.Msghdr.Namelen)
220220
if err != nil {
221-
lnc.logger.Warn("Failed to parse sockaddr of packet from serverConn", zap.Error(err))
221+
lnc.logger.Error("Failed to parse sockaddr of packet from serverConn", zap.Error(err))
222222
s.putQueuedPacket(queuedPacket)
223223
continue
224224
}
@@ -236,7 +236,7 @@ func (s *UDPTransparentRelay) recvFromServerConnRecvmmsg(ctx context.Context, ln
236236

237237
rscm, err := conn.ParseSocketControlMessage(cmsg)
238238
if err != nil {
239-
lnc.logger.Warn("Failed to parse socket control message from serverConn",
239+
lnc.logger.Error("Failed to parse socket control message from serverConn",
240240
zap.Stringer("clientAddress", clientAddrPort),
241241
zap.Int("cmsgLength", len(cmsg)),
242242
zap.Error(err),
@@ -245,7 +245,7 @@ func (s *UDPTransparentRelay) recvFromServerConnRecvmmsg(ctx context.Context, ln
245245
continue
246246
}
247247
if !rscm.OriginalDestinationAddrPort.IsValid() {
248-
lnc.logger.Warn("Discarded packet from serverConn due to missing original destination address",
248+
lnc.logger.Error("Discarded packet from serverConn due to missing original destination address",
249249
zap.Stringer("clientAddress", clientAddrPort),
250250
zap.Int("cmsgLength", len(cmsg)),
251251
)
@@ -324,7 +324,7 @@ func (s *UDPTransparentRelay) recvFromServerConnRecvmmsg(ctx context.Context, ln
324324
}
325325

326326
if err = natConn.SetReadDeadline(time.Now().Add(lnc.natTimeout)); err != nil {
327-
lnc.logger.Warn("Failed to set read deadline on natConn",
327+
lnc.logger.Error("Failed to set read deadline on natConn",
328328
zap.Stringer("clientAddress", clientAddrPort),
329329
zap.Stringer("targetAddress", &queuedPacket.targetAddrPort),
330330
zap.String("client", clientInfo.Name),
@@ -517,7 +517,7 @@ main:
517517
}
518518

519519
if err := uplink.natConn.SetReadDeadline(time.Now().Add(uplink.natTimeout)); err != nil {
520-
uplink.logger.Warn("Failed to set read deadline on natConn",
520+
uplink.logger.Error("Failed to set read deadline on natConn",
521521
zap.Stringer("clientAddress", uplink.clientAddrPort),
522522
zap.String("client", uplink.clientName),
523523
zap.Duration("natTimeout", uplink.natTimeout),
@@ -652,7 +652,7 @@ func (s *UDPTransparentRelay) relayNatConnToTransparentConnSendmmsg(ctx context.
652652

653653
packetSourceAddrPort, err := conn.SockaddrToAddrPort(msg.Msghdr.Name, msg.Msghdr.Namelen)
654654
if err != nil {
655-
downlink.logger.Warn("Failed to parse sockaddr of packet from natConn",
655+
downlink.logger.Error("Failed to parse sockaddr of packet from natConn",
656656
zap.Stringer("clientAddress", downlink.clientAddrPort),
657657
zap.String("client", downlink.clientName),
658658
zap.Error(err),
@@ -773,7 +773,7 @@ func (s *UDPTransparentRelay) Stop() error {
773773
for i := range s.listeners {
774774
lnc := &s.listeners[i]
775775
if err := lnc.serverConn.SetReadDeadline(conn.ALongTimeAgo); err != nil {
776-
lnc.logger.Warn("Failed to set read deadline on serverConn", zap.Error(err))
776+
lnc.logger.Error("Failed to set read deadline on serverConn", zap.Error(err))
777777
}
778778
}
779779

@@ -789,7 +789,7 @@ func (s *UDPTransparentRelay) Stop() error {
789789
}
790790

791791
if err := natConn.SetReadDeadline(conn.ALongTimeAgo); err != nil {
792-
entry.logger.Warn("Failed to set read deadline on natConn",
792+
entry.logger.Error("Failed to set read deadline on natConn",
793793
zap.Stringer("clientAddress", clientAddrPort),
794794
zap.Error(err),
795795
)
@@ -804,7 +804,7 @@ func (s *UDPTransparentRelay) Stop() error {
804804
for i := range s.listeners {
805805
lnc := &s.listeners[i]
806806
if err := lnc.serverConn.Close(); err != nil {
807-
lnc.logger.Warn("Failed to close serverConn", zap.Error(err))
807+
lnc.logger.Error("Failed to close serverConn", zap.Error(err))
808808
}
809809
}
810810

0 commit comments

Comments
 (0)