Search code examples
sessionloggingkubernetescontainersmicroservices

How to track session across several web apps, multiple microservices


I would like to track a session across multiple web applications, multiple microservices. All of my web applications are static files and microservices are running under nodejs containers with Kubernetes.

I have tracking setup across separate web applications and separate microservices. But it too cumbersome to merge and view everything in a single view.

Is there any approach to view all of them under single session?


Solution

  • Kubernetes itself do not support any request tracing, but you can use Istio together with Kubernetes, which has Distributed Tracing feature.

    In short, your application will need to resend attached headers and Istio will detects it, collect information from all your services and show you requests tracing.

    Also, it supports Mesh, so, theoretically, your application can work a bit faster and secure (because of network rules).

    You can read about Istio here, about tracing here and here is an instruction of how to setup it in Kubernetes.