func readConf() *conf.Conf { conf := &conf.Conf{ Freq: 15, } loc := *flagConf if *flagConf == "" { p, err := exePath() if err != nil { slog.Error(err) return conf } dir := filepath.Dir(p) loc = filepath.Join(dir, "scollector.toml") } f, err := os.Open(loc) if err != nil { if *flagConf != "" { slog.Fatal(err) } if *flagDebug { slog.Error(err) } } else { defer f.Close() md, err := toml.DecodeReader(f, conf) if err != nil { slog.Fatal(err) } if u := md.Undecoded(); len(u) > 0 { slog.Fatalf("extra keys in %s: %v", loc, u) } } return conf }
func readConf() *Conf { conf := &Conf{ Freq: 15, } loc := *flagConf if *flagConf == "" { p, err := exePath() if err != nil { slog.Error(err) return conf } dir := filepath.Dir(p) loc = filepath.Join(dir, "scollector.toml") } f, err := os.Open(loc) if err != nil { if *flagConf != "" { slog.Fatal(err) } if *flagDebug { slog.Error(err) } } else { defer f.Close() _, err := toml.DecodeReader(f, conf) if err != nil { slog.Fatal(err) } } return conf }