in nimo-full-check/main/main.go [20:55]
func main() {
defer LOG.Close()
// parse conf.Opts
args, err := flags.Parse(&conf.Opts)
if conf.Opts.Version {
fmt.Println(utils.Version)
os.Exit(0)
}
// 若err != nil, 会自动打印错误到 stderr
if err != nil {
if flagsErr, ok := err.(*flags.Error); ok && flagsErr.Type == flags.ErrHelp {
os.Exit(0)
} else {
fmt.Fprintf(os.Stderr, "flag err %s\n", flagsErr)
os.Exit(1)
}
}
if len(args) != 0 {
fmt.Fprintf(os.Stderr, "unexpected args %+v", args)
os.Exit(1)
}
shakeUtils.InitialLogger("", conf.Opts.LogLevel, false)
if err := sanitizeOptions(); err != nil {
crash(fmt.Sprintf("Conf.Options check failed: %s", err.Error()), -4)
}
LOG.Info("full-check starts")
run.Start()
LOG.Info("full-check completes!")
}