veza/veza-backend-api/internal/handlers/system_metrics.go
senke f0ba7de543 state-ownership: delete unused optimisticStoreUpdates.ts file
- Deleted apps/web/src/utils/optimisticStoreUpdates.ts (unused file)
- File was unused - no imports found in codebase
- Mutations already use React Query's onMutate pattern
- No TypeScript errors after deletion
- Actions 4.4.1.2 and 4.4.1.3 complete
2026-01-15 19:26:53 +01:00

37 lines
836 B
Go

package handlers
import (
"runtime"
"github.com/google/uuid"
"github.com/gin-gonic/gin"
)
// SystemMetrics retourne les métriques système (CPU, mémoire, goroutines)
// Endpoint: GET /system/metrics
// Retourne un JSON avec les métriques système pour le monitoring
func SystemMetrics(c *gin.Context) {
var m runtime.MemStats
runtime.ReadMemStats(&m)
metrics := gin.H{
"timestamp": uuid.New(),
"memory": gin.H{
"alloc_mb": bToMb(m.Alloc),
"total_alloc_mb": bToMb(m.TotalAlloc),
"sys_mb": bToMb(m.Sys),
"num_gc": m.NumGC,
},
"goroutines": runtime.NumGoroutine(),
"cpu_count": runtime.NumCPU(),
}
// Action 1.3.2.1: Use wrapped format helper
RespondSuccess(c, 200, metrics)
}
// bToMb convertit des bytes en megabytes
func bToMb(b uint64) uint64 {
return b / 1024 / 1024
}