Back to questions
Junior — Middle
79
Какие основные системные показатели ты знаешь и можешь использовать для мониторинга ресурсов?
Answer from AI
sobes.tech AI
Основные системные показатели для мониторинга ресурсов:
- CPU Usage (Загрузка процессора): процент использования процессора, помогает выявлять перегрузки.
- Memory Usage (Использование памяти): объем занятой и свободной оперативной памяти.
- Disk I/O (Ввод/вывод на диск): скорость чтения и записи, задержки.
- Network I/O (Сетевая активность): объем переданных и полученных данных, количество ошибок.
- Load Average: средняя нагрузка на систему за определённый период.
- Number of Goroutines (для Go): количество активных горутин, может указывать на утечки.
- Garbage Collection metrics: время и частота сборок мусора.
В Go можно использовать пакет runtime для получения информации о горутинах и сборке мусора:
import (
"fmt"
"runtime"
)
func printStats() {
var m runtime.MemStats
runtime.ReadMemStats(&m)
fmt.Printf("Goroutines: %d\n", runtime.NumGoroutine())
fmt.Printf("Alloc = %v MiB\n", m.Alloc / 1024 / 1024)
fmt.Printf("TotalAlloc = %v MiB\n", m.TotalAlloc / 1024 / 1024)
fmt.Printf("Sys = %v MiB\n", m.Sys / 1024 / 1024)
fmt.Printf("NumGC = %v\n", m.NumGC)
}