diff options
Diffstat (limited to 'pkg/server/tunnel.go')
| -rw-r--r-- | pkg/server/tunnel.go | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/pkg/server/tunnel.go b/pkg/server/tunnel.go index afd35d8..ae20c9b 100644 --- a/pkg/server/tunnel.go +++ b/pkg/server/tunnel.go @@ -229,8 +229,23 @@ func (s *stream) info() string { d = s.until.Sub(s.since).Milliseconds() } - return fmt.Sprintf("%.3fs [%s] %d/%d -> %d/%d", - float64(d)/1000.0, s.env.Get("info"), + var t string + + switch { + case d < 60000: + t = fmt.Sprintf("%.3f", float64(d)/1000.0) + case d < 3600000: + m, d := d / 60000, d % 60000 + t = fmt.Sprintf("%d:%06.3f", m, float64(d)/1000.0) + default: + h, d := d / 3600000, d % 3600000 + m, d := d / 60000, d % 60000 + t = fmt.Sprintf("%d:%02d:%06.3f", h, m, float64(d)/1000.0) + } + + return fmt.Sprintf("[%s] %s %d/%d -> %d/%d", + s.env.Get("info"), + t, s.m.in.tx, s.m.in.rx, s.m.out.rx, |
