aboutsummaryrefslogtreecommitdiffstats
path: root/cmd/utils/flags.go
diff options
context:
space:
mode:
authorPéter Szilágyi <peterke@gmail.com>2016-11-25 23:55:06 +0800
committerFelix Lange <fjl@twurst.com>2016-11-25 23:55:06 +0800
commit4c8c5e2f7410d850ee6068b46c8b880f733743d4 (patch)
treec0070af77b249084355d4f659a09809d08633840 /cmd/utils/flags.go
parentd1a95c643eadd506f6ae85784d22c7823e411ee9 (diff)
downloadgo-tangerine-4c8c5e2f7410d850ee6068b46c8b880f733743d4.tar.gz
go-tangerine-4c8c5e2f7410d850ee6068b46c8b880f733743d4.tar.zst
go-tangerine-4c8c5e2f7410d850ee6068b46c8b880f733743d4.zip
cmd, ethstats, les, mobile, params: native netstats (#3336)
Diffstat (limited to 'cmd/utils/flags.go')
-rw-r--r--cmd/utils/flags.go32
1 files changed, 27 insertions, 5 deletions
diff --git a/cmd/utils/flags.go b/cmd/utils/flags.go
index 5c09e44ec..cb91f4539 100644
--- a/cmd/utils/flags.go
+++ b/cmd/utils/flags.go
@@ -14,6 +14,7 @@
// You should have received a copy of the GNU General Public License
// along with go-ethereum. If not, see <http://www.gnu.org/licenses/>.
+// Package utils contains internal helper functions for go-ethereum commands.
package utils
import (
@@ -36,6 +37,7 @@ import (
"github.com/ethereum/go-ethereum/crypto"
"github.com/ethereum/go-ethereum/eth"
"github.com/ethereum/go-ethereum/ethdb"
+ "github.com/ethereum/go-ethereum/ethstats"
"github.com/ethereum/go-ethereum/event"
"github.com/ethereum/go-ethereum/les"
"github.com/ethereum/go-ethereum/logger"
@@ -86,7 +88,7 @@ func NewApp(gitCommit, usage string) *cli.App {
app.Author = ""
//app.Authors = nil
app.Email = ""
- app.Version = Version
+ app.Version = params.Version
if gitCommit != "" {
app.Version += "-" + gitCommit[:8]
}
@@ -242,8 +244,11 @@ var (
Name: "jitvm",
Usage: "Enable the JIT VM",
}
-
- // logging and debug settings
+ // Logging and debug settings
+ EthStatsURLFlag = cli.StringFlag{
+ Name: "ethstats",
+ Usage: "Reporting URL of a ethstats service (nodename:secret@host:port)",
+ }
MetricsEnabledFlag = cli.BoolFlag{
Name: metrics.MetricsEnabledFlag,
Usage: "Enable metrics collection and reporting",
@@ -660,7 +665,7 @@ func MakePasswordList(ctx *cli.Context) []string {
// MakeNode configures a node with no services from command line flags.
func MakeNode(ctx *cli.Context, name, gitCommit string) *node.Node {
- vsn := Version
+ vsn := params.Version
if gitCommit != "" {
vsn += "-" + gitCommit[:8]
}
@@ -801,13 +806,30 @@ func RegisterEthService(ctx *cli.Context, stack *node.Node, extra []byte) {
}
}
-// RegisterShhService configures whisper and adds it to the given node.
+// RegisterShhService configures Whisper and adds it to the given node.
func RegisterShhService(stack *node.Node) {
if err := stack.Register(func(*node.ServiceContext) (node.Service, error) { return whisper.New(), nil }); err != nil {
Fatalf("Failed to register the Whisper service: %v", err)
}
}
+// RegisterEthStatsService configures the Ethereum Stats daemon and adds it to
+// th egiven node.
+func RegisterEthStatsService(stack *node.Node, url string) {
+ if err := stack.Register(func(ctx *node.ServiceContext) (node.Service, error) {
+ // Retrieve both eth and les services
+ var ethServ *eth.Ethereum
+ ctx.Service(&ethServ)
+
+ var lesServ *les.LightEthereum
+ ctx.Service(&lesServ)
+
+ return ethstats.New(url, ethServ, lesServ)
+ }); err != nil {
+ Fatalf("Failed to register the Ethereum Stats service: %v", err)
+ }
+}
+
// SetupNetwork configures the system for either the main net or some test network.
func SetupNetwork(ctx *cli.Context) {
switch {