Visualization of microservices-based architecture is a critical aspect and a must-have feature of any observability solution. This is where Epsagon Service Maps shine and provide many additional benefits.
In Part 1 of this series, we saw how to set up the Service Maps. For Part 2, we will explore their various benefits and use cases.
Epsagon Service Maps
Epsagon’s Service Maps can be used as a static or a dynamic tool.
As a static tool, it provides you a snapshot of your architecture, enabling:
- Real-time visualization of microservices
- Understanding your microservices
- On-boarding of new developers and teammates
It can also be used as a dynamic tool, helping you observe application changes over time, enabling:
- Troubleshooting of issues
- Building of high-performance systems
Let’s drill down into each of these benefits in more detail.
Using Service Maps as a Static Tool
Real-time Visualization of Microservices
The most immediate benefit of service maps is getting a holistic view of the architecture. With a Service Map, you get to see all the AWS and many of your third-party services. AWS services (such as Kinesis, S3, and DynamoDB) and third-party services (such as Stripe and Auth0) are automatically visible as soon as you integrate Epsagon into your environment. Most APM solutions don’t show a real-time view of your architecture. The genuinely complete visibility of all the services is a differentiating feature in Epsagon.
Understanding Your Microservices
Epsagon enables you to understand complex and distributed applications. The Service Map decomposes applications into resources and services, drawing their observed connections in real-time so that you can identify errors, dependencies, or performance bottlenecks in your architecture. Hover over a resource to understand which upstream and downstream resources are dependent (connected) on it.
Clicking on the microservice opens a visualization of its performance metrics over time (week/day/hour). You can see when the errors occurred, the average duration, and the breakdown of durations by an operation.
Onboarding New Developers and Teammates
A service map can be extremely useful to onboard new developers to your team. You can export and share it with your teammates so they can see the visualization of the entire application stack and understand the dependencies between the microservices.
Using Service Maps as a Dynamic Tool
Looking for an errored resource can be done simply by observing red arrows in the graph. Red arrows represent error-saturated relations with an error rate of over 0.5%. You can click on the relevant node to see more information and jump to traces to explore the exact issue to gain a better understanding of why the error rate is high.
Using these performance metrics, you can find the weakest link in your application and understand which one of your services had the most failures within the last hour/day/week.
Building High-Performance Systems
It is critical to understand how microservices behave with respect to each other over time to build a high-performant system. By observing the behavior, you can optimize the architecture to be much more efficient. You can also find specific bottlenecks, tweak the architecture, and understand how your application is affected just by analyzing service maps. Therefore, service maps can be extremely useful in building high-performance systems.
Over this two-part series, we’ve seen how to set up Epsagon’s Service Maps and the wide range of benefits they offer for developers and operations teams. This feature is incredibly powerful to understand your architecture in great detail. Check out Epsagon’s demo environment to experiment with this feature or start your free trial here.