thanos-io/thanos · error
error parsing commandline arguments
Error message
error parsing commandline arguments: %v
What it means
App.Parse prints usage and exits the process with status 2 when kingpin cannot parse os.Args — unknown flags, bad values, or missing required arguments. It is not a runtime error; it terminates the program.
Solutions
- Fix the command-line arguments per the printed usage.
- Check systemd/unit/service definitions for typos in flags.
- Use --help to list valid flags.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at pkg/extkingpin/app.go:61 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of thanos-io/thanos@35b8b99117 (2026-09-07).
Data as JSON: /api/errors/fa51678dc5d8c36f.
Report an issue: GitHub.
Appendix: source
Thrown at pkg/extkingpin/app.go:61
app.HelpFlag.Short('h')
app.UsageFuncs(template.FuncMap{
"alphabeticalSort": func(data []*kingpin.FlagModel) []*kingpin.FlagModel {
sort.Slice(data, func(i, j int) bool { return data[i].Name < data[j].Name })
return data
},
})
return &App{
app: app,
FlagClause: app,
setups: map[string]SetupFunc{},
}
}
func (a *App) Parse() (cmd string, setup SetupFunc) {
cmd, err := a.app.Parse(os.Args[1:])
if err != nil {
a.app.Usage(os.Args[1:])
fmt.Fprintln(os.Stderr, errors.Wrapf(err, "error parsing commandline arguments: %v", os.Args))
os.Exit(2)
}
return cmd, a.setups[cmd]
}
func (a *App) Command(cmd, help string) AppClause {
c := a.app.Command(cmd, help)
return &appClause{
c: c,
FlagClause: c,
setups: a.setups,
prefix: cmd,
}
}
type appClause struct {
c *kingpin.CmdClause
View on GitHub (pinned to 35b8b99117)