6902485767
This PR adds flag to enable InfluxDB v2 (--metrics.influxdbv2), flags for v2-specific features (--metrics.influxdb.token, --metrics.influxdb.bucket), also carries over addition of support for specifying organization (--metrics.influxdb.organization), but still retains backwards compatibility with InfluxDB v1.
57 lines
2.0 KiB
Go
57 lines
2.0 KiB
Go
// Copyright 2021 The go-ethereum Authors
|
|
// This file is part of go-ethereum.
|
|
//
|
|
// The go-ethereum library is free software: you can redistribute it and/or modify
|
|
// it under the terms of the GNU Lesser General Public License as published by
|
|
// the Free Software Foundation, either version 3 of the License, or
|
|
// (at your option) any later version.
|
|
//
|
|
// The go-ethereum library is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
// GNU Lesser General Public License for more details.
|
|
//
|
|
// You should have received a copy of the GNU Lesser General Public License
|
|
// along with the go-ethereum library. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
package metrics
|
|
|
|
// Config contains the configuration for the metric collection.
|
|
type Config struct {
|
|
Enabled bool `toml:",omitempty"`
|
|
EnabledExpensive bool `toml:",omitempty"`
|
|
HTTP string `toml:",omitempty"`
|
|
Port int `toml:",omitempty"`
|
|
EnableInfluxDB bool `toml:",omitempty"`
|
|
InfluxDBEndpoint string `toml:",omitempty"`
|
|
InfluxDBDatabase string `toml:",omitempty"`
|
|
InfluxDBUsername string `toml:",omitempty"`
|
|
InfluxDBPassword string `toml:",omitempty"`
|
|
InfluxDBTags string `toml:",omitempty"`
|
|
|
|
EnableInfluxDBV2 bool `toml:",omitempty"`
|
|
InfluxDBToken string `toml:",omitempty"`
|
|
InfluxDBBucket string `toml:",omitempty"`
|
|
InfluxDBOrganization string `toml:",omitempty"`
|
|
}
|
|
|
|
// DefaultConfig is the default config for metrics used in go-ethereum.
|
|
var DefaultConfig = Config{
|
|
Enabled: false,
|
|
EnabledExpensive: false,
|
|
HTTP: "127.0.0.1",
|
|
Port: 6060,
|
|
EnableInfluxDB: false,
|
|
InfluxDBEndpoint: "http://localhost:8086",
|
|
InfluxDBDatabase: "geth",
|
|
InfluxDBUsername: "test",
|
|
InfluxDBPassword: "test",
|
|
InfluxDBTags: "host=localhost",
|
|
|
|
// influxdbv2-specific flags
|
|
EnableInfluxDBV2: false,
|
|
InfluxDBToken: "test",
|
|
InfluxDBBucket: "geth",
|
|
InfluxDBOrganization: "geth",
|
|
}
|