add a management interface
With a large deploy of this you might have 20 or 30 or more instances of SR running and there will be a wide range of topics being replicated with different settings etc
We'd want to be able to pause/resume replication in an emergency but also extract from it some information like workers, etc
So I propose embedding a choria instance into SR with to start with the following:
- Facts should be generated indicating topic, workers, etc
- An agent with
pause,unpause,infoactions
These should join a configured NATS cluster and live in a configured sub collective, they should be disoverable by -I and -F
parking this one for a while, this is rather complex when considering the intersection of advisories.
when paused all the nodes will age out and a ton of advisories will be created, i could pause advisories, but on resume - instantly all will be old. Need to consider this a bit more
the way this should work is that the advisor should subscribe to the queue on its own subscription and walk that independently. This will continue when paused but the main replication loop should stop
Once we know how this will work, we should use the backplane to build it https://github.com/choria-io/go-backplane