mirror of
https://github.com/weaveworks/scope.git
synced 2026-03-04 10:41:14 +00:00
The Ubuntu Xenial update to kernel 4.4.0-119.143 from 4.4.0-116.140 did include a regression in the eBPF code. A basic `bpf_map_lookup_elem` call as found in the tcptracer-bpf library used by Scope leads to a kernel panic. As a result, Scope / the system crashes during startup when the tcptracer is initialized. The Scope bug report can be found here: https://github.com/weaveworks/scope/issues/3131 To avoid crashes and gently fallback to procfs (as Scope already does for systems not supporting eBPF), update `isKernelSupported()` and explicitly check for Ubuntu Kernel versions with the problem. Once the bug is fixed and an update published, the `abiNumber` check in `isKernelSupported()` can and should be updated with an upper limit. The Ubuntu bug report can be found here: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1763454
Quick overview
Information gatherers
These implement the Reporter interface
awsecsDeals with talking to AWS ECS to get stats and infodockerInspects the docker statusendpointGathers connection datahostGets data from the host os, including things like CPU and mem statskubernetesGathers data from k8soverlayTalks to Weave Net for network stats from the overlay networkprocessIs code that looks up running process and stats form the os
Utility and control
appclientDeals with generating and sending reportscontrolsUtility code for control messages and the likepluginsallows plugins to be added to the probe.