go-profiler-notes is a collection of educational reference materials that explains how Go's profiling tools and methods work.
The repository addresses the gap between Go's rich profiling capabilities and the lack of accessible documentation about what profiling data actually means. Rather than building a tool, it provides detailed written explanations and guides covering the mechanics of Go's profilers, the pprof format and tooling, stack traces as a foundational system for profiling, goroutine profiling for inspecting active goroutines, and block profiling for measuring time spent waiting on channels and locks. The material is structured to help developers understand not just how to use these profilers but what the underlying data represents.
This resource suits developers who need to understand Go profiling deeply enough to interpret results, debug performance issues effectively, or work on profiling infrastructure. It is particularly valuable for those building observability systems or continuous profiling solutions who need to grasp the mechanics rather than just the surface-level usage. The repository complements the official Go diagnostics documentation by providing substantially more depth on individual profiling methods.
The project maintains a structured guide alongside focused deep-dives into specific profiling topics, with some areas marked as in progress. External references are actively curated to point readers toward complementary resources and official documentation. The work reflects ongoing research into Go's profiling landscape with a commitment to making that knowledge accessible to the broader community.