tailscale/ipn/ipnlocal
Mihai Parparita 97b6d3e917 sockstats: remove per-interface stats from Get
They're not needed for the sockstats logger, and they're somewhat
expensive to return (since they involve the creation of a map per
label). We now have a separate GetInterfaces() method that returns
them instead (which we can still use in the PeerAPI debug endpoint).

If changing sockstatlog to sample at 10,000 Hz (instead of the default
of 10Hz), the CPU usage would go up to 59% on a iPhone XS. Removing the
per-interface stats drops it to 20% (a no-op implementation of Get that
returns a fixed value is 16%).

Updates tailscale/corp#9230
Updates #3363

Signed-off-by: Mihai Parparita <mihai@tailscale.com>
2023-03-14 15:38:41 -07:00
..
testdata ipn/ipnlocal: fix the path for writing cert files (#7203) 2023-02-07 14:34:04 -08:00
c2n.go ipn: add c2n endpoint for sockstats logs 2023-03-13 15:25:54 -07:00
cert_js.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
cert_test.go ipn/ipnlocal: fix the path for writing cert files (#7203) 2023-02-07 14:34:04 -08:00
cert.go version: unexport all vars, turn Short/Long into funcs 2023-02-11 07:29:55 +00:00
dnsconfig_test.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
expiry_test.go ipn/ipnlocal: handle more edge cases in netmap expiry timer 2023-02-06 20:32:25 -05:00
expiry.go ipn/ipnlocal: handle more edge cases in netmap expiry timer 2023-02-06 20:32:25 -05:00
local_test.go all: use tstest.Replace more 2023-03-04 12:24:55 -08:00
local.go log/sockstatlog: only start once; don't copy ticker 2023-03-13 17:02:42 -07:00
loglines_test.go all: replace logtail.{Public,Private}ID with logid.{Public,Private}ID (#7404) 2023-02-28 19:00:00 -08:00
network-lock_test.go ipn,cmd/tailscale: implement resigning nodes on tka key removal 2023-03-03 10:09:05 -10:00
network-lock.go cmd/tailscale: surface node-key for locked out tailnet-lock peers 2023-03-09 11:06:23 -10:00
peerapi_h2c.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
peerapi_macios_ext.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
peerapi_test.go ipn/ipnlocal: drop not required StateKey parameter 2023-01-30 17:58:55 -08:00
peerapi.go sockstats: remove per-interface stats from Get 2023-03-14 15:38:41 -07:00
profiles_test.go ipn/ipnlocal: use presence of NodeID to identify logins 2023-02-06 21:52:35 -08:00
profiles.go ipn/ipnlocal: use presence of NodeID to identify logins 2023-02-06 21:52:35 -08:00
serve_test.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
serve.go ipn/ipnlocal: add support for funnel in tsnet 2023-03-09 12:53:00 -08:00
ssh_stub.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
ssh_test.go ipn/ipnlocal: drop not required StateKey parameter 2023-01-30 17:58:55 -08:00
ssh.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
state_test.go ipn/ipnlocal: use presence of NodeID to identify logins 2023-02-06 21:52:35 -08:00