internal/debug: add memStats and gcStats to API
This commit is contained in:
		
							parent
							
								
									bcd8aeefdd
								
							
						
					
					
						commit
						bea56d84e5
					
				| @ -27,6 +27,7 @@ import ( | ||||
| 	"os/user" | ||||
| 	"path/filepath" | ||||
| 	"runtime" | ||||
| 	"runtime/debug" | ||||
| 	"runtime/pprof" | ||||
| 	"strings" | ||||
| 	"sync" | ||||
| @ -69,6 +70,20 @@ func (*HandlerT) BacktraceAt(location string) error { | ||||
| 	return glog.GetTraceLocation().Set(location) | ||||
| } | ||||
| 
 | ||||
| // MemStats returns detailed runtime memory statistics.
 | ||||
| func (*HandlerT) MemStats() *runtime.MemStats { | ||||
| 	s := new(runtime.MemStats) | ||||
| 	runtime.ReadMemStats(s) | ||||
| 	return s | ||||
| } | ||||
| 
 | ||||
| // GcStats returns GC statistics.
 | ||||
| func (*HandlerT) GcStats() *debug.GCStats { | ||||
| 	s := new(debug.GCStats) | ||||
| 	debug.ReadGCStats(s) | ||||
| 	return s | ||||
| } | ||||
| 
 | ||||
| // CpuProfile turns on CPU profiling for nsec seconds and writes
 | ||||
| // profile data to file.
 | ||||
| func (h *HandlerT) CpuProfile(file string, nsec uint) error { | ||||
|  | ||||
| @ -327,6 +327,16 @@ web3._extend({ | ||||
| 			params: 0, | ||||
| 			outputFormatter: console.log | ||||
| 		}), | ||||
| 		new web3._extend.Method({ | ||||
| 			name: 'memStats', | ||||
| 			call: 'debug_memStats', | ||||
| 			params: 0, | ||||
| 		}), | ||||
| 		new web3._extend.Method({ | ||||
| 			name: 'gcStats', | ||||
| 			call: 'debug_gcStats', | ||||
| 			params: 0, | ||||
| 		}), | ||||
| 		new web3._extend.Method({ | ||||
| 			name: 'cpuProfile', | ||||
| 			call: 'debug_cpuProfile', | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user