Skip to content

Commit 4071f17

Browse files
authored
feat: add logging to agent stats and JetBrains tracking (#11364)
Adds logging so we can hope to diagnose #11363
1 parent 893a8ea commit 4071f17

File tree

2 files changed

+13
-0
lines changed

2 files changed

+13
-0
lines changed

agent/agent.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1188,6 +1188,7 @@ func (a *agent) handleReconnectingPTY(ctx context.Context, logger slog.Logger, m
11881188
// startReportingConnectionStats runs the connection stats reporting goroutine.
11891189
func (a *agent) startReportingConnectionStats(ctx context.Context) {
11901190
reportStats := func(networkStats map[netlogtype.Connection]netlogtype.Counts) {
1191+
a.logger.Debug(ctx, "computing stats report")
11911192
stats := &agentsdk.Stats{
11921193
ConnectionCount: int64(len(networkStats)),
11931194
ConnectionsByProto: map[string]int64{},
@@ -1209,6 +1210,7 @@ func (a *agent) startReportingConnectionStats(ctx context.Context) {
12091210
stats.SessionCountReconnectingPTY = a.connCountReconnectingPTY.Load()
12101211

12111212
// Compute the median connection latency!
1213+
a.logger.Debug(ctx, "starting peer latency measurement for stats")
12121214
var wg sync.WaitGroup
12131215
var mu sync.Mutex
12141216
status := a.network.Status()
@@ -1257,13 +1259,17 @@ func (a *agent) startReportingConnectionStats(ctx context.Context) {
12571259

12581260
metricsCtx, cancelFunc := context.WithTimeout(ctx, 5*time.Second)
12591261
defer cancelFunc()
1262+
a.logger.Debug(ctx, "collecting agent metrics for stats")
12601263
stats.Metrics = a.collectMetrics(metricsCtx)
12611264

12621265
a.latestStat.Store(stats)
12631266

1267+
a.logger.Debug(ctx, "about to send stats")
12641268
select {
12651269
case a.connStatsChan <- stats:
1270+
a.logger.Debug(ctx, "successfully sent stats")
12661271
case <-a.closed:
1272+
a.logger.Debug(ctx, "didn't send stats because we are closed")
12671273
}
12681274
}
12691275

agent/agentssh/jetbrainstrack.go

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package agentssh
22

33
import (
4+
"context"
45
"strings"
56
"sync"
67

@@ -26,6 +27,7 @@ type localForwardChannelData struct {
2627
type JetbrainsChannelWatcher struct {
2728
gossh.NewChannel
2829
jetbrainsCounter *atomic.Int64
30+
logger slog.Logger
2931
}
3032

3133
func NewJetbrainsChannelWatcher(ctx ssh.Context, logger slog.Logger, newChannel gossh.NewChannel, counter *atomic.Int64) gossh.NewChannel {
@@ -58,6 +60,7 @@ func NewJetbrainsChannelWatcher(ctx ssh.Context, logger slog.Logger, newChannel
5860
return &JetbrainsChannelWatcher{
5961
NewChannel: newChannel,
6062
jetbrainsCounter: counter,
63+
logger: logger.With(slog.F("destination_port", d.DestPort)),
6164
}
6265
}
6366

@@ -67,11 +70,15 @@ func (w *JetbrainsChannelWatcher) Accept() (gossh.Channel, <-chan *gossh.Request
6770
return c, r, err
6871
}
6972
w.jetbrainsCounter.Add(1)
73+
// nolint: gocritic // JetBrains is a proper noun and should be capitalized
74+
w.logger.Debug(context.Background(), "JetBrains watcher accepted channel")
7075

7176
return &ChannelOnClose{
7277
Channel: c,
7378
done: func() {
7479
w.jetbrainsCounter.Add(-1)
80+
// nolint: gocritic // JetBrains is a proper noun and should be capitalized
81+
w.logger.Debug(context.Background(), "JetBrains watcher channel closed")
7582
},
7683
}, r, err
7784
}

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy