mirror of
https://github.com/weaveworks/scope.git
synced 2026-09-06 10:17:19 +00:00
When we receive an endpoint address without a protocol, our code states we don't support them and that the format is deprecated. In reality it was not the case, e.g: When we received an address in the form of `127.0.0.1`, we'd attempt to parse the scheme from it, we'd realise is does have one (would be equivalent to "") and our function `parseEndpoint` would return `"", "", fmt.Error`. Then, our `parseEndpointWithFallbackProtocol` would use the fallback protocol (unix) and attempt to connect to `unix://127.0.0.1`. This meant two things: 1. The error returned from `parseEndpoint` would never be thrown 2. We would connect anyways since the address is valid This commit changes the assertion logic to match the intention of using a fallback protocol when one is not supplied.
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.