Monitoring in a Microservices World

Fabian Stäber from Instana, gives a really informative talk about how to tackle monitoring with microservices.

Watch again:

https://docker.events.cube365.net/docker/dockercon/content/Videos/ynr2xuTtb9wMhAGEh

Lots of things to consider:

  • Automation of monitoring to avoid bottlenecks with deploying microservices.
  • The underlying data

Metrics

More than health checks which are more common with monoliths.

Define what does it mean for my application to be healthy.  Discussing how you take this time series data and apply it to the additional dimensions that microservices bring.

  • Aggregation horizontal metrics
  • Vertical checks – what is going on in the stack Java, JVM, Docker, K8 node, hardware itself.

Distributed tracing

  • Ensure new and legacy services also provide tracing
  • Tie together traces to error logs.

Further reading

Fabian helpfully points out these three Site Reliability Engineering books from Google that are available for free.

 

From Zero to Useless to Hero: Make Runtime Data Useful in Teams

By Florian Lautenschlager & Robert Hoffmann

Session summary 

They are building a GDPR compliant voice assistant that give users control over personal data.

Monitoring stack slide

Lovely but not usable by their team.

How did they improve the usage and culture in their organisation to their monitoring toolkit.

E.g. Adding links from metrics re tests failing to system logs related to that test.

Create a dashboard to facilitate frequent queries, e.g. Search by trace id or username.

Also they integrated the links into commonly used tools, like ticket systems or chat tools.

Conclusion slide