Packet Tracing
The packet flow through a Federated Choria Network can be traced using mco federation trace dev1.example.net. It will publish a tracing enabled message to the Federation. It will then show the resulting path the packet took in a meaningful way.
The network diagram above shows a Federated Collective and how a packet might flow across the network. When doing a trace you will see output like this:
Take note of a few things here:
- The message took an asymmetric route through the Federation Broker - Federation Broker Instances choria1.ldn.example.net and choria2.ldn.example.net were involved
- Within the Federation Brokers are a number of micro services instances, individual service instances are shown - Prometheus stats would expose individual microservices as well
- The Federation Broker Instances shown are only the ones that can be inferred from the discovered route since there is no central registry
- The list of known Federation Broker Clusters is influenced by your configuration and the CHORIA_FED_COLLECTIVE variable
Tip
This is unlike a traceroute, it can only show the result if the entire flow works and the reply is received. If your network is not functional it cannot show you where communication breaks.