cfgPath:=fs.String("config","/etc/felis/felis.toml","path to felis.toml (the host copy, which reaches PostgreSQL on 127.0.0.1)")
statePath:=fs.String("state","/var/lib/felis/watchdog/state.json","state kept between runs (root only: it caches the relay password)")
quietPath:=fs.String("quiet-file","/run/felis/watchdog-quiet-until","Unix time before which nothing is mailed; the installer writes it while it restarts things on purpose")
backupDir:=fs.String("backup-dir","/var/lib/felis/db-backups",`control-plane database backups to check for freshness ("" skips the check)`)
diskPaths:=fs.String("disk-paths","/,/var/lib/rancher/k3s,/var/lib/postgresql,/var/lib/felis","comma-separated paths whose filesystems must keep free space")
proxyAddr:=fs.String("proxy-addr","",`game proxy address to dial, e.g. 127.0.0.1:25565 ("" skips the check)`)
controlNS:=fs.String("control-namespace",platform.DefaultControlNamespace,"namespace of the control plane")
dryRun:=fs.Bool("dry-run",false,"print every finding and the mail that is due; send nothing and keep the state as it was")
fmt.Fprintln(stdout,"felis watchdog: nothing is due to be mailed")
}else{
fmt.Fprintf(stdout,"felis watchdog: due to be mailed to %s:\nSubject: %s\n\n%s",strings.Join(state.Recipients,", "),subject,strings.ReplaceAll(body,"\r\n","\n"))