How we tracked down (what seemed like) a memory leak in one of our Go microservices

At Detectify, the backend team is using Go to power microservices. We noticed one of our microservices had a behavior very similar to that of a memory leak.

In this post we will go step-by-step through our investigation of this problem, the thought process behind our decisions and the details needed to understand and fix the problem.