mirror of
https://blitiri.com.ar/repos/chasquid
synced 2025-12-17 14:37:02 +00:00
config: Improve logging of errors
Currently, the config package logs errors itself, in addition to returning them. That is confusing and results in some duplication of logging. This patch makes config just return errors, and adjusts the callers to log them properly.
This commit is contained in:
@@ -72,7 +72,7 @@ func main() {
|
|||||||
|
|
||||||
conf, err := config.Load(*configDir + "/chasquid.conf")
|
conf, err := config.Load(*configDir + "/chasquid.conf")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatalf("Error reading config: %v", err)
|
log.Fatalf("Error loading config: %v", err)
|
||||||
}
|
}
|
||||||
config.LogConfig(conf)
|
config.LogConfig(conf)
|
||||||
|
|
||||||
|
|||||||
@@ -206,7 +206,7 @@ func userRemove() {
|
|||||||
func aliasesResolve() {
|
func aliasesResolve() {
|
||||||
conf, err := config.Load(configDir + "/chasquid.conf")
|
conf, err := config.Load(configDir + "/chasquid.conf")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
Fatalf("Error reading config")
|
Fatalf("Error loading config: %v", err)
|
||||||
}
|
}
|
||||||
_ = os.Chdir(configDir)
|
_ = os.Chdir(configDir)
|
||||||
|
|
||||||
@@ -250,7 +250,7 @@ func aliasesResolve() {
|
|||||||
func printConfig() {
|
func printConfig() {
|
||||||
conf, err := config.Load(configDir + "/chasquid.conf")
|
conf, err := config.Load(configDir + "/chasquid.conf")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
Fatalf("Error reading config")
|
Fatalf("Error loading config: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
fmt.Println(prototext.Format(conf))
|
fmt.Println(prototext.Format(conf))
|
||||||
@@ -262,7 +262,7 @@ func domaininfoRemove() {
|
|||||||
|
|
||||||
conf, err := config.Load(configDir + "/chasquid.conf")
|
conf, err := config.Load(configDir + "/chasquid.conf")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
Fatalf("Error reading config")
|
Fatalf("Error loading config: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
// File for the corresponding domain.
|
// File for the corresponding domain.
|
||||||
@@ -292,7 +292,7 @@ func aliasesAdd() {
|
|||||||
|
|
||||||
conf, err := config.Load(configDir + "/chasquid.conf")
|
conf, err := config.Load(configDir + "/chasquid.conf")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
Fatalf("Error reading config")
|
Fatalf("Error loading config: %v", err)
|
||||||
}
|
}
|
||||||
_ = os.Chdir(configDir)
|
_ = os.Chdir(configDir)
|
||||||
|
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ package config
|
|||||||
//go:generate protoc --go_out=. --go_opt=paths=source_relative config.proto
|
//go:generate protoc --go_out=. --go_opt=paths=source_relative config.proto
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
"os"
|
"os"
|
||||||
|
|
||||||
@@ -19,15 +20,12 @@ func Load(path string) (*Config, error) {
|
|||||||
|
|
||||||
buf, err := ioutil.ReadFile(path)
|
buf, err := ioutil.ReadFile(path)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Errorf("Failed to read config at %q", path)
|
return nil, fmt.Errorf("failed to read config at %q: %v", path, err)
|
||||||
log.Errorf(" (%v)", err)
|
|
||||||
return nil, err
|
|
||||||
}
|
}
|
||||||
|
|
||||||
err = prototext.Unmarshal(buf, c)
|
err = prototext.Unmarshal(buf, c)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Errorf("Error parsing config: %v", err)
|
return nil, fmt.Errorf("parsing config: %v", err)
|
||||||
return nil, err
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Fill in defaults for anything that's missing.
|
// Fill in defaults for anything that's missing.
|
||||||
@@ -35,8 +33,7 @@ func Load(path string) (*Config, error) {
|
|||||||
if c.Hostname == "" {
|
if c.Hostname == "" {
|
||||||
c.Hostname, err = os.Hostname()
|
c.Hostname, err = os.Hostname()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Errorf("Could not get hostname: %v", err)
|
return nil, fmt.Errorf("could not get hostname: %v", err)
|
||||||
return nil, err
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user