2021-10-09, 11:35–12:05, Main stage
This session is going to present a full cloud-native observability stack that can be used to get monitoring data from a non-orchestrated micro-services architecture oriented application.
The application will use HTTP and gRPC for communication, but will not include any code to aid with its monitoring. Then, to get as much data about the application as possible, a set of open source tools like Nginx Ingress Controller, Prometheus, Jaeger, Loki, Linkerd 2, and Grafana will be used. Attendees can see how much telemetry one can get using these tools: metrics, logs and even traces will be presented - all of that without changing a line of code in the application. Obviously, the end result won’t be as good as an app with orchestrated code - there’s no free lunch. But let’s see if one can get a sandwich on-the-house.
The main objective of this talk is to show attendees how far the observability ecosystem built around Kubernetes has taken us. I want to show a simple application, that except for typical old-style logging doesn’t use any modern observability-supporting tools. Still, by combining it with Open Source platform tools we have at our disposal, we can get a lot of observability for free.
The presentation will show how any app can be instrumented: how we can analyse logs using Loki, observe traces using Jaeger and how we can dig into metrics provided by Linkerd and Nginx Ingress Controller.
This talk is backed up by my blog series I did for our company blog: https://www.giantswarm.io/blog/part-7-the-observability-finale. It also has full source code available on GitHub: https://github.com/giantswarm/giantswarm-todo-app/.