Просмотр исходного кода

Include heap metrics in server_load

Rod Hynes 8 лет назад
Родитель
Сommit
286095de36
1 измененных файлов с 10 добавлено и 0 удалено
  1. 10 0
      psiphon/server/services.go

+ 10 - 0
psiphon/server/services.go

@@ -339,8 +339,18 @@ func logServerLoad(server *TunnelServer) {
 	for protocol, stats := range protocolStats {
 		serverLoad[protocol] = stats
 	}
+
 	serverLoad["establish_tunnels"] = server.GetEstablishTunnels()
 
+	var memStats runtime.MemStats
+	runtime.ReadMemStats(&memStats)
+	serverLoad["heap_alloc"] = memStats.HeapAlloc
+	serverLoad["heap_sys"] = memStats.HeapSys
+	serverLoad["heap_idle"] = memStats.HeapIdle
+	serverLoad["heap_inuse"] = memStats.HeapInuse
+	serverLoad["heap_released"] = memStats.HeapReleased
+	serverLoad["heap_objects"] = memStats.HeapObjects
+
 	log.LogRawFieldsWithTimestamp(serverLoad)
 
 	for region, regionProtocolStats := range regionStats {