diff --git a/cmd/geth/main.go b/cmd/geth/main.go index de1a59772..5695c4117 100644 --- a/cmd/geth/main.go +++ b/cmd/geth/main.go @@ -245,9 +245,15 @@ JavaScript API. See https://github.com/ethereum/go-ethereum/wiki/Javascipt-Conso utils.LogVModuleFlag, utils.LogFileFlag, utils.LogJSONFlag, - utils.PProfEnabledFlag, + utils.PProfDisabledFlag, utils.PProfPortFlag, } + app.Before = func(ctx *cli.Context) error { + if !ctx.GlobalBool(utils.PProfDisabledFlag.Name) { + utils.StartPProf(ctx) + } + return nil + } // missing: // flag.StringVar(&ConfigFile, "conf", defaultConfigFile, "config file") @@ -332,10 +338,6 @@ func unlockAccount(ctx *cli.Context, am *accounts.Manager, account string) (pass } func startEth(ctx *cli.Context, eth *eth.Ethereum) { - // Start profiling, if requested - if ctx.GlobalBool(utils.PProfEnabledFlag.Name) { - utils.StartPProf(ctx) - } // Start Ethereum itself utils.StartEthereum(eth) am := eth.AccountManager() diff --git a/cmd/utils/flags.go b/cmd/utils/flags.go index 3b1fda32e..429007642 100644 --- a/cmd/utils/flags.go +++ b/cmd/utils/flags.go @@ -157,9 +157,9 @@ var ( Usage: "When set to a file and line number holding a logging statement a stack trace will be written to the Info log", Value: glog.GetTraceLocation(), } - PProfEnabledFlag = cli.BoolFlag{ - Name: "pprof", - Usage: "Whether the profiling server is enabled", + PProfDisabledFlag = cli.BoolFlag{ + Name: "nopprof", + Usage: "Whether the profiling server should be disabled", } PProfPortFlag = cli.IntFlag{ Name: "pprofport",