You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tailscale/wgengine
Mihai Parparita 9cb332f0e2 sockstats: instrument networking code paths
Uses the hooks added by tailscale/go#45 to instrument the reads and
writes on the major code paths that do network I/O in the client. The
convention is to use "<package>.<type>:<label>" as the annotation for
the responsible code path.

Enabled on iOS, macOS and Android only, since mobile platforms are the
ones we're most interested in, and we are less sensitive to any
throughput degradation due to the per-I/O callback overhead (macOS is
also enabled for ease of testing during development).

For now just exposed as counters on a /v0/sockstats PeerAPI endpoint.

We also keep track of the current interface so that we can break out
the stats by interface.

Updates tailscale/corp#9230
Updates #3363

Signed-off-by: Mihai Parparita <mihai@tailscale.com>
2 years ago
..
bench all: update copyright and license headers 2 years ago
capture wgengine: start logging DISCO frames to pcap stream 2 years ago
filter all: update copyright and license headers 2 years ago
magicsock sockstats: instrument networking code paths 2 years ago
monitor all: update copyright and license headers 2 years ago
netlog all: replace logtail.{Public,Private}ID with logid.{Public,Private}ID (#7404) 2 years ago
netstack all: use Go 1.20's bytes.Clone 2 years ago
router all: update copyright and license headers 2 years ago
wgcfg all: replace logtail.{Public,Private}ID with logid.{Public,Private}ID (#7404) 2 years ago
wgint all: update copyright and license headers 2 years ago
wglog all: update copyright and license headers 2 years ago
winnet all: update copyright and license headers 2 years ago
mem_ios.go all: update copyright and license headers 2 years ago
pendopen.go all: update copyright and license headers 2 years ago
userspace.go sockstats: instrument networking code paths 2 years ago
userspace_ext_test.go all: update copyright and license headers 2 years ago
userspace_test.go all: update copyright and license headers 2 years ago
watchdog.go wgengine: start logging DISCO frames to pcap stream 2 years ago
watchdog_js.go all: update copyright and license headers 2 years ago
watchdog_test.go all: update copyright and license headers 2 years ago
wgengine.go wgengine: start logging DISCO frames to pcap stream 2 years ago