Update service and syslog code to use variable instead of constant

for the process name and service name. This allows the reuse of this
code in NATS Streaming Server by invoking the new setters to
change the service and process names.

Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
This commit is contained in:
Ivan Kozlovic
2018-08-16 10:21:01 -06:00
parent a2b5acfd3d
commit 2153a45050
5 changed files with 26 additions and 8 deletions

View File

@@ -26,7 +26,12 @@ import (
"syscall"
)
const processName = "gnatsd"
var processName = "gnatsd"
// SetProcessName allows to change the expected name of the process.
func SetProcessName(name string) {
processName = name
}
// Signal Handling
func (s *Server) handleSignals() {
@@ -76,10 +81,10 @@ func ProcessSignal(command Command, pidStr string) error {
return err
}
if len(pids) == 0 {
return errors.New("no gnatsd processes running")
return fmt.Errorf("no %s processes running", processName)
}
if len(pids) > 1 {
errStr := "multiple gnatsd processes running:\n"
errStr := fmt.Sprintf("multiple %s processes running:\n", processName)
prefix := ""
for _, p := range pids {
errStr += fmt.Sprintf("%s%d", prefix, p)