Как профилировать HTTP handler?

Middle
235 просмотров
AFK Offer AI

Подключаешь net/http/pprof: import _ "net/http/pprof" и запускаешь http.ListenAndServe(":6060", nil) в горутине. Потом go tool pprof http://localhost:6060/debug/pprof/profile?seconds=30 для CPU. Для памяти: /debug/pprof/heap. Для горутин: /debug/pprof/goroutine. Для блокировок: /debug/pprof/mutex. В продакшене — осторожно с CPU profile, он нагружает. Для конкретного handler — middleware с трейсингом. httptest.NewServer + benchmark тест для изолированного профилирования.

Следующий вопрос

Что такое incident management?