Назад к вопросам
Junior — Middle
81
Какими способами можно получить доступ к ключевым метрикам системы?
Ответ от нейросети
sobes.tech AI
В Go для получения ключевых метрик системы часто используют пакет expvar, который позволяет экспортировать метрики в формате JSON по HTTP. Также популярны сторонние библиотеки, например, Prometheus client для Go, которая собирает и предоставляет метрики в формате, удобном для мониторинга.
Пример с использованием expvar:
import (
"expvar"
"net/http"
)
var requests = expvar.NewInt("requests")
func handler(w http.ResponseWriter, r *http.Request) {
requests.Add(1)
w.Write([]byte("Hello, metrics!"))
}
func main() {
http.HandleFunc("/", handler)
// Метрики будут доступны по /debug/vars
http.ListenAndServe(":8080", nil)
}
Также можно использовать стандартные системные вызовы и библиотеки для получения информации о памяти, загрузке CPU и других метриках, например, через runtime пакет.