mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-07-25 06:06:44 +00:00
cmd: --metrics.statesize
Signed-off-by: jsvisa <delweng@gmail.com>
This commit is contained in:
parent
64cfce5b5d
commit
6f7c81ff71
4 changed files with 20 additions and 1 deletions
|
|
@ -209,7 +209,7 @@ func constructDevModeBanner(ctx *cli.Context, cfg gethConfig) string {
|
||||||
0x%x (10^49 ETH)
|
0x%x (10^49 ETH)
|
||||||
`, cfg.Eth.Miner.PendingFeeRecipient)
|
`, cfg.Eth.Miner.PendingFeeRecipient)
|
||||||
if cfg.Eth.Miner.PendingFeeRecipient == utils.DeveloperAddr {
|
if cfg.Eth.Miner.PendingFeeRecipient == utils.DeveloperAddr {
|
||||||
devModeBanner += fmt.Sprintf(`
|
devModeBanner += fmt.Sprintf(`
|
||||||
Private Key
|
Private Key
|
||||||
------------------
|
------------------
|
||||||
0x%x
|
0x%x
|
||||||
|
|
@ -375,6 +375,9 @@ func applyMetricConfig(ctx *cli.Context, cfg *gethConfig) {
|
||||||
if ctx.IsSet(utils.MetricsInfluxDBOrganizationFlag.Name) {
|
if ctx.IsSet(utils.MetricsInfluxDBOrganizationFlag.Name) {
|
||||||
cfg.Metrics.InfluxDBOrganization = ctx.String(utils.MetricsInfluxDBOrganizationFlag.Name)
|
cfg.Metrics.InfluxDBOrganization = ctx.String(utils.MetricsInfluxDBOrganizationFlag.Name)
|
||||||
}
|
}
|
||||||
|
if ctx.IsSet(utils.MetricsStateSizeFlag.Name) {
|
||||||
|
cfg.Metrics.EnableStateSizeTracking = ctx.Bool(utils.MetricsStateSizeFlag.Name)
|
||||||
|
}
|
||||||
// Sanity-check the commandline flags. It is fine if some unused fields is part
|
// Sanity-check the commandline flags. It is fine if some unused fields is part
|
||||||
// of the toml-config, but we expect the commandline to only contain relevant
|
// of the toml-config, but we expect the commandline to only contain relevant
|
||||||
// arguments, otherwise it indicates an error.
|
// arguments, otherwise it indicates an error.
|
||||||
|
|
|
||||||
|
|
@ -200,6 +200,7 @@ var (
|
||||||
utils.MetricsInfluxDBTokenFlag,
|
utils.MetricsInfluxDBTokenFlag,
|
||||||
utils.MetricsInfluxDBBucketFlag,
|
utils.MetricsInfluxDBBucketFlag,
|
||||||
utils.MetricsInfluxDBOrganizationFlag,
|
utils.MetricsInfluxDBOrganizationFlag,
|
||||||
|
utils.MetricsStateSizeFlag,
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -966,6 +966,13 @@ Please note that --` + MetricsHTTPFlag.Name + ` must be set to start the server.
|
||||||
Value: metrics.DefaultConfig.InfluxDBOrganization,
|
Value: metrics.DefaultConfig.InfluxDBOrganization,
|
||||||
Category: flags.MetricsCategory,
|
Category: flags.MetricsCategory,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
MetricsStateSizeFlag = &cli.BoolFlag{
|
||||||
|
Name: "metrics.statesize",
|
||||||
|
Usage: "Enable state size tracking for metrics collection",
|
||||||
|
Value: metrics.DefaultConfig.EnableStateSizeTracking,
|
||||||
|
Category: flags.MetricsCategory,
|
||||||
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
|
|
@ -2218,6 +2225,10 @@ func MakeChain(ctx *cli.Context, stack *node.Node, readonly bool) (*core.BlockCh
|
||||||
} else if ctx.IsSet(CacheFlag.Name) || ctx.IsSet(CacheSnapshotFlag.Name) {
|
} else if ctx.IsSet(CacheFlag.Name) || ctx.IsSet(CacheSnapshotFlag.Name) {
|
||||||
options.SnapshotLimit = ctx.Int(CacheFlag.Name) * ctx.Int(CacheSnapshotFlag.Name) / 100
|
options.SnapshotLimit = ctx.Int(CacheFlag.Name) * ctx.Int(CacheSnapshotFlag.Name) / 100
|
||||||
}
|
}
|
||||||
|
if ctx.Bool(MetricsStateSizeFlag.Name) {
|
||||||
|
log.Info("Enabling state size tracking")
|
||||||
|
options.EnableStateSizeTracking = true
|
||||||
|
}
|
||||||
// If we're in readonly, do not bother generating snapshot data.
|
// If we're in readonly, do not bother generating snapshot data.
|
||||||
if readonly {
|
if readonly {
|
||||||
options.SnapshotNoBuild = true
|
options.SnapshotNoBuild = true
|
||||||
|
|
|
||||||
|
|
@ -33,6 +33,8 @@ type Config struct {
|
||||||
InfluxDBToken string `toml:",omitempty"`
|
InfluxDBToken string `toml:",omitempty"`
|
||||||
InfluxDBBucket string `toml:",omitempty"`
|
InfluxDBBucket string `toml:",omitempty"`
|
||||||
InfluxDBOrganization string `toml:",omitempty"`
|
InfluxDBOrganization string `toml:",omitempty"`
|
||||||
|
|
||||||
|
EnableStateSizeTracking bool `toml:",omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// DefaultConfig is the default config for metrics used in go-ethereum.
|
// DefaultConfig is the default config for metrics used in go-ethereum.
|
||||||
|
|
@ -53,4 +55,6 @@ var DefaultConfig = Config{
|
||||||
InfluxDBToken: "test",
|
InfluxDBToken: "test",
|
||||||
InfluxDBBucket: "geth",
|
InfluxDBBucket: "geth",
|
||||||
InfluxDBOrganization: "geth",
|
InfluxDBOrganization: "geth",
|
||||||
|
|
||||||
|
EnableStateSizeTracking: false,
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue