config.go 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. // Copyright 2021 The go-ethereum Authors
  2. // This file is part of go-ethereum.
  3. //
  4. // The go-ethereum library is free software: you can redistribute it and/or modify
  5. // it under the terms of the GNU Lesser General Public License as published by
  6. // the Free Software Foundation, either version 3 of the License, or
  7. // (at your option) any later version.
  8. //
  9. // The go-ethereum library is distributed in the hope that it will be useful,
  10. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12. // GNU Lesser General Public License for more details.
  13. //
  14. // You should have received a copy of the GNU Lesser General Public License
  15. // along with the go-ethereum library. If not, see <http://www.gnu.org/licenses/>.
  16. package metrics
  17. // Config contains the configuration for the metric collection.
  18. type Config struct {
  19. Enabled bool `toml:",omitempty"`
  20. EnabledExpensive bool `toml:",omitempty"`
  21. HTTP string `toml:",omitempty"`
  22. Port int `toml:",omitempty"`
  23. EnableInfluxDB bool `toml:",omitempty"`
  24. InfluxDBEndpoint string `toml:",omitempty"`
  25. InfluxDBDatabase string `toml:",omitempty"`
  26. InfluxDBUsername string `toml:",omitempty"`
  27. InfluxDBPassword string `toml:",omitempty"`
  28. InfluxDBTags string `toml:",omitempty"`
  29. }
  30. // DefaultConfig is the default config for metrics used in go-ethereum.
  31. var DefaultConfig = Config{
  32. Enabled: false,
  33. EnabledExpensive: false,
  34. HTTP: "127.0.0.1",
  35. Port: 6060,
  36. EnableInfluxDB: false,
  37. InfluxDBEndpoint: "http://localhost:8086",
  38. InfluxDBDatabase: "geth",
  39. InfluxDBUsername: "test",
  40. InfluxDBPassword: "test",
  41. InfluxDBTags: "host=localhost",
  42. }