{"record":{"id":"9b02db6e9ced7aa4","repo":"nats-io/nats-server","slug":"unknown-signal-q","errorCode":null,"errorMessage":"unknown signal %q","messagePattern":"unknown signal %q","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"server/signal.go","lineNumber":164,"sourceCode":"}\n\n// Translates a command to a signal number\nfunc CommandToSignal(command Command) (syscall.Signal, error) {\n\tswitch command {\n\tcase CommandStop:\n\t\treturn syscall.SIGKILL, nil\n\tcase CommandQuit:\n\t\treturn syscall.SIGINT, nil\n\tcase CommandReopen:\n\t\treturn syscall.SIGUSR1, nil\n\tcase CommandReload:\n\t\treturn syscall.SIGHUP, nil\n\tcase commandLDMode:\n\t\treturn syscall.SIGUSR2, nil\n\tcase commandTerm:\n\t\treturn syscall.SIGTERM, nil\n\tdefault:\n\t\treturn 0, fmt.Errorf(\"unknown signal %q\", command)\n\t}\n}\n\n// resolvePids returns the pids for all running nats-server processes.\nfunc resolvePids() ([]int, error) {\n\t// If pgrep isn't available, this will just bail out and the user will be\n\t// required to specify a pid.\n\toutput, err := pgrep()\n\tif err != nil {\n\t\tswitch err.(type) {\n\t\tcase *exec.ExitError:\n\t\t\t// ExitError indicates non-zero exit code, meaning no processes\n\t\t\t// found.\n\t\t\tbreak\n\t\tdefault:\n\t\t\treturn nil, errors.New(\"unable to resolve pid, try providing one\")\n\t\t}\n\t}","sourceCodeStart":146,"sourceCodeEnd":182,"githubUrl":"https://github.com/nats-io/nats-server/blob/3a66a489d262bf89b71a71c955c94920394532f3/server/signal.go#L146-L182","documentation":"CommandToSignal maps the CLI signal command (stop, quit, reopen, reload, ldm, term) to a syscall signal number; the default branch means an unrecognized Command value reached the mapper. Almost always an invalid subcommand passed to nats-server --signal (e.g. 'hup' instead of 'reload').","triggerScenarios":"Thrown at server/signal.go:164 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use a supported command: stop, quit, reopen, reload, ldm, term","Check spelling of the value after --signal (e.g. <pid>:reload)"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"3a66a489d262bf89b71a71c955c94920394532f3","analyzedAt":"2026-09-02T04:41:54.247Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-08T15:18:49.778Z"}