use logger instead of stderr since in daemon mode we cannot access std outputs
This commit is contained in:
parent
ddb0c24977
commit
451b73b0f2
1 changed files with 16 additions and 14 deletions
30
main.go
30
main.go
|
|
@ -115,6 +115,8 @@ func bootstrapNode() {
|
|||
}
|
||||
}
|
||||
|
||||
var log = logging.MustGetLogger("main")
|
||||
|
||||
func nodeMain() {
|
||||
xmlBytes, err := os.ReadFile(configPath)
|
||||
if err != nil {
|
||||
|
|
@ -124,7 +126,7 @@ func nodeMain() {
|
|||
|
||||
var config NodeConfig
|
||||
if err := xml.Unmarshal(xmlBytes, &config); err != nil {
|
||||
fmt.Fprintf(os.Stderr, "failed to parse xml: %v\n", err)
|
||||
log.Criticalf("failed to parse xml: %v\n", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
|
|
@ -133,30 +135,30 @@ func nodeMain() {
|
|||
|
||||
// check presense of keystore and id in config
|
||||
if config.KeyStore == "" {
|
||||
fmt.Fprintln(os.Stderr, "no keystore path specified!")
|
||||
log.Critical("no keystore path specified!")
|
||||
os.Exit(1)
|
||||
}
|
||||
if config.ID == "" {
|
||||
fmt.Fprintln(os.Stderr, "no ID in config! You need to --bootstrap")
|
||||
log.Critical("no ID in config! You need to --bootstrap")
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
nodeId, err := proto.ParseLuxID(config.ID)
|
||||
if err != nil {
|
||||
fmt.Fprintf(os.Stderr, "failed to parse node id: %v\n", err)
|
||||
log.Criticalf("failed to parse node id: %v\n", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
// load keystore
|
||||
ks := crypto.NewLuxKeyStore(config.KeyStore)
|
||||
if err := ks.Load(); err != nil {
|
||||
fmt.Fprintf(os.Stderr, "failed to laod keystore: %v\n", err)
|
||||
log.Criticalf("failed to laod keystore: %v\n", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
nodeKey, ok := ks.Get(nodeId)
|
||||
if !ok {
|
||||
fmt.Fprintln(os.Stderr, "node key is not present in key store!")
|
||||
log.Critical("node key is not present in key store!")
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
|
|
@ -166,13 +168,13 @@ func nodeMain() {
|
|||
// add interior exterior channels
|
||||
for _, interior := range config.Interior {
|
||||
if err := node.AddInterior(interior); err != nil {
|
||||
fmt.Fprintf(os.Stderr, "failed to add interior %s: %v\n", interior, err)
|
||||
log.Criticalf("failed to add interior %s: %v\n", interior, err)
|
||||
os.Exit(1)
|
||||
}
|
||||
}
|
||||
for _, exterior := range config.Exterior {
|
||||
if err := node.AddExterior(exterior); err != nil {
|
||||
fmt.Fprintf(os.Stderr, "failed to add exterior %s: %v\n", exterior, err)
|
||||
log.Criticalf("failed to add exterior %s: %v\n", exterior, err)
|
||||
os.Exit(1)
|
||||
}
|
||||
}
|
||||
|
|
@ -181,12 +183,12 @@ func nodeMain() {
|
|||
for _, neighbor := range config.Neighbors {
|
||||
neighId, err := proto.ParseLuxID(neighbor.ID)
|
||||
if err != nil {
|
||||
fmt.Fprintf(os.Stderr, "failed to parse neigh id %s: %v\n", neighbor.ID, err)
|
||||
log.Criticalf("failed to parse neigh id %s: %v\n", neighbor.ID, err)
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
if err := node.AddNeighbor(neighId, neighbor.Address); err != nil {
|
||||
fmt.Fprintf(os.Stderr, "failed to add neighbor %s: %v\n", neighbor.ID, err)
|
||||
log.Criticalf("failed to add neighbor %s: %v\n", neighbor.ID, err)
|
||||
os.Exit(1)
|
||||
}
|
||||
}
|
||||
|
|
@ -201,18 +203,18 @@ func nodeMain() {
|
|||
path := rpcPath[7:]
|
||||
|
||||
if err := sv.AddEndpoint("unix", path, rpc.LuxRpcTypeRoot); err != nil {
|
||||
fmt.Fprintf(os.Stderr, "failed to add root rpc %s: %v\n", path, err)
|
||||
log.Criticalf("failed to add root rpc %s: %v\n", path, err)
|
||||
os.Exit(1)
|
||||
}
|
||||
} else if strings.HasPrefix(rpcPath, "tcp://") {
|
||||
path := rpcPath[6:]
|
||||
|
||||
if err := sv.AddEndpoint("tcp", path, rpc.LuxRpcTypeQuery); err != nil {
|
||||
fmt.Fprintf(os.Stderr, "failed to add query rpc %s: %v\n", path, err)
|
||||
log.Criticalf("failed to add query rpc %s: %v\n", path, err)
|
||||
os.Exit(1)
|
||||
}
|
||||
} else {
|
||||
fmt.Fprintf(os.Stderr, "unknown rpc type %s. It must be either unix:// or tcp://\n", rpcPath)
|
||||
log.Criticalf("unknown rpc type %s. It must be either unix:// or tcp://\n", rpcPath)
|
||||
os.Exit(1)
|
||||
}
|
||||
}
|
||||
|
|
@ -231,7 +233,7 @@ func nodeMain() {
|
|||
signaling:
|
||||
for {
|
||||
sig := <-sigs
|
||||
fmt.Println(sig)
|
||||
log.Debug(sig)
|
||||
switch sig {
|
||||
case syscall.SIGINT:
|
||||
break signaling
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue