cosmos-sdk/cmd/basecoin/commands/root.go

44 lines
948 B
Go
Raw Normal View History

2017-05-01 07:03:54 -07:00
package commands
import (
"os"
2017-06-26 05:28:56 -07:00
"github.com/spf13/cobra"
"github.com/spf13/viper"
"github.com/tendermint/tmlibs/cli"
tmflags "github.com/tendermint/tmlibs/cli/flags"
2017-05-01 07:03:54 -07:00
"github.com/tendermint/tmlibs/log"
)
2017-07-05 03:57:52 -07:00
//nolint
2017-06-26 05:28:56 -07:00
const (
defaultLogLevel = "error"
FlagLogLevel = "log_level"
)
2017-05-01 07:03:54 -07:00
var (
logger = log.NewTMLogger(log.NewSyncWriter(os.Stdout)).With("module", "main")
)
2017-06-26 05:28:56 -07:00
2017-07-05 03:57:52 -07:00
// RootCmd - main node command
2017-06-26 05:28:56 -07:00
var RootCmd = &cobra.Command{
Use: "basecoin",
Short: "A cryptocurrency framework in Golang based on Tendermint-Core",
PersistentPreRunE: func(cmd *cobra.Command, args []string) (err error) {
level := viper.GetString(FlagLogLevel)
logger, err = tmflags.ParseLogLevel(level, logger, defaultLogLevel)
if err != nil {
return err
}
if viper.GetBool(cli.TraceFlag) {
logger = log.NewTracingLogger(logger)
}
return nil
},
}
func init() {
RootCmd.PersistentFlags().String(FlagLogLevel, defaultLogLevel, "Log level")
}