- Add interfaces to allow for alternative implementations for Collector, ControlRouter
and PipeRouter.
- Pass contexts on http handlers to these interfaces. Although not used by the current
(local, in-memory) implementations, the idea is this will be used to pass headers to
implementations which support multitenancy (by, for instance, putting an authenticating
reverse proxy in form of the app, and then inspecting the headers of the request for
a used id).
- App takes POST report on /api/report
- Probe publishes to configured target(s)
- Name resolution happens on probe-side
- There's no longer an xfer.ProbePort
- xfer.Collector responsibility is reduced
- Fixes to remaining experimental components.
- rm experimental/bridge: it's not being used, and by changing the
app/probe comm model, it would require a complete refactor anyway. We
can easily rebuild it when we need to. It will even be much simpler.
- rm experimental/graphviz: it's broken for some time anyway, and we
don't really need to play around with it as a rendering option
anymore.
- rm experimental/oneshot: we never use this anymore.