package rigger import ( "net/http" "runtime" "ciyon/web/admin" c "ciyon/zciyon" ) func Statssrv_init(w http.ResponseWriter, r *http.Request) bool { post := c.NewCiyPost(w, r) _, userid := admin.Verifyfast(r, c.CiyDB, post) if userid == 0 { return false } stats := map[string]map[string]any{} stats["Go版本"] = map[string]any{"value": runtime.Version()} stats["程序版本"] = map[string]any{"value": c.CiyVars.Version} stats["操作系统"] = map[string]any{"value": runtime.GOOS} stats["CPU数量"] = map[string]any{"value": runtime.NumCPU()} var m runtime.MemStats runtime.ReadMemStats(&m) stats["Memory Allocation"] = map[string]any{"value": m.Alloc} stats["Heap Allocation"] = map[string]any{"value": m.TotalAlloc} stats["Heap System"] = map[string]any{"value": m.HeapSys} stats["Heap In Use"] = map[string]any{"value": m.HeapInuse} stats["Heap Idle"] = map[string]any{"value": m.HeapIdle} stats["Heap Released"] = map[string]any{"value": m.HeapReleased} stats["GC Pause"] = map[string]any{"value": m.PauseNs[(m.NumGC+255)%256]} stats["Number of GC"] = map[string]any{"value": m.NumGC} stats["Number of Go Routines"] = map[string]any{"value": runtime.NumGoroutine()} ret := map[string]any{} ret["stats"] = stats return c.SuccJSON(w, r, ret) }