The dashboard displays the topology of services and workloads inside the mesh, and annotates it with real-time information about latency, throughput or HTTP request failures. It serves as a starting point of diagnosing problems within the mesh. The UI is integrated with Grafana to easily access more in-depths monitoring if needed, and with Jaeger for one-click access of distributed traces of various services.

Try it out! 🔗︎

On the TOPOLOGY tab, you'll be presented the service mesh control panel. If your application hasn't received any traffic yet, there will be no metrics in the system so you won't see any visualization yet. The UI has a test flight feature that sends some traffic to a selected endpoint. If you click the HTTP button in the top right corner of the screen, you'll be able to fill out a form with the endpoint details and send some test traffic to your services.

In a few seconds a graph of your services will appear. The nodes in the graph are services or workloads, while the arrows represent network connection between different services. This is based on Istio metrics coming from Prometheus.

The graph serves as a visual monitoring tool, as it displays various errors and metrics in the system. Here are the options which can be observed and configured on the UI:

Namespaces 🔗︎

The namespaces can be filtered which ones we would like to see. If all are selected here's what we get in a demo cluster:

Polling 🔗︎

Automatic polling to show real time metrics can be enabled or disabled.

Resources 🔗︎

The following resources can be filtered in a cluster: clusters, namespaces, apps, services and workloads.

Workloads are always shown, they cannot be disabled.

Here's an example when only apps, services and workloads are shown:

Showing clusters is important in Backyards because it supports multi and hybrid cloud architectures as well.

Edge labels 🔗︎

The labels on the edges can display various real-time information about traffic between services. You can see the protocol used for communication (HTTP, gRPC, TCP), actual P95 latency, the current request rate (or throughput for TCP connections), or if the connection is using mTLS or not.

The graph legends in the above picture also helps you understand what the icons mean exactly.