aboutsummaryrefslogtreecommitdiffstats
path: root/cmd/geth/main.go
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/geth/main.go')
-rw-r--r--cmd/geth/main.go25
1 files changed, 3 insertions, 22 deletions
diff --git a/cmd/geth/main.go b/cmd/geth/main.go
index fcf7f27f0..3e945687b 100644
--- a/cmd/geth/main.go
+++ b/cmd/geth/main.go
@@ -39,11 +39,11 @@ import (
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/eth"
"github.com/ethereum/go-ethereum/logger"
+ "github.com/ethereum/go-ethereum/metrics"
"github.com/ethereum/go-ethereum/rpc/codec"
"github.com/ethereum/go-ethereum/rpc/comms"
"github.com/mattn/go-colorable"
"github.com/mattn/go-isatty"
- "github.com/rcrowley/go-metrics"
)
const (
@@ -272,6 +272,7 @@ JavaScript API. See https://github.com/ethereum/go-ethereum/wiki/Javascipt-Conso
utils.LogJSONFlag,
utils.PProfEanbledFlag,
utils.PProfPortFlag,
+ utils.MetricsEnabledFlag,
utils.SolcPathFlag,
utils.GpoMinGasPriceFlag,
utils.GpoMaxGasPriceFlag,
@@ -288,27 +289,7 @@ JavaScript API. See https://github.com/ethereum/go-ethereum/wiki/Javascipt-Conso
return nil
}
// Start system runtime metrics collection
- go func() {
- allocs := metrics.GetOrRegisterMeter("system/memory/allocs", metrics.DefaultRegistry)
- frees := metrics.GetOrRegisterMeter("system/memory/frees", metrics.DefaultRegistry)
- inuse := metrics.GetOrRegisterMeter("system/memory/inuse", metrics.DefaultRegistry)
- pauses := metrics.GetOrRegisterMeter("system/memory/pauses", metrics.DefaultRegistry)
-
- stats := make([]*runtime.MemStats, 2)
- for i := 0; i < len(stats); i++ {
- stats[i] = new(runtime.MemStats)
- }
- for i := 1; ; i++ {
- runtime.ReadMemStats(stats[i%2])
-
- allocs.Mark(int64(stats[i%2].Mallocs - stats[(i-1)%2].Mallocs))
- frees.Mark(int64(stats[i%2].Frees - stats[(i-1)%2].Frees))
- inuse.Mark(int64(stats[i%2].Alloc - stats[(i-1)%2].Alloc))
- pauses.Mark(int64(stats[i%2].PauseTotalNs - stats[(i-1)%2].PauseTotalNs))
-
- time.Sleep(3 * time.Second)
- }
- }()
+ go metrics.CollectProcessMetrics(3 * time.Second)
}
func main() {