diff options
| author | Mikhail Osipov <mike.osipov@gmail.com> | 2020-09-18 22:57:52 +0300 |
|---|---|---|
| committer | Mikhail Osipov <mike.osipov@gmail.com> | 2020-09-18 22:57:52 +0300 |
| commit | 2a756282a4997081a73544a9af6dc59571f0c466 (patch) | |
| tree | 98c0366e01d0eeeb268560dda79e2e4e7a6928c5 /pkg/server/tunnel.go | |
| parent | 92fdd0e34e1fddf3cc85c3e0691d4fd1196bc382 (diff) | |
human readable time info about streams
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, |
