Skip to content

Commit

Permalink
Merge branch 'develop'
Browse files Browse the repository at this point in the history
  • Loading branch information
xiaonanln committed Feb 11, 2018
2 parents 9bcf260 + 69f78c0 commit 8377806
Show file tree
Hide file tree
Showing 3 changed files with 42 additions and 29 deletions.
24 changes: 9 additions & 15 deletions Gopkg.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 0 additions & 4 deletions Gopkg.toml
Original file line number Diff line number Diff line change
Expand Up @@ -46,10 +46,6 @@
[[constraint]]
name = "github.com/google/btree"

[[constraint]]
name = "github.com/natefinch/lumberjack"
version = "2.1.0"

[[constraint]]
name = "github.com/pierrec/lz4"
version = "1.0.1"
Expand Down
43 changes: 33 additions & 10 deletions cmd/goworld/status.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,21 +25,31 @@ func (ss *ServerStatus) IsRunning() bool {
return ss.NumDispatcherRunning > 0 || ss.NumGatesRunning > 0 || ss.NumGamesRunning > 0
}

func getProcPath(proc ps.Process) (string, error) {
path, err := proc.Path()

if err == nil {
return path, nil
}

if pathErr, ok := err.(*os.PathError); ok {
path = pathErr.Path
if strings.HasSuffix(path, " (deleted)") {
path = path[:len(path)-10]
return path, nil
}
}
return "", err
}

func detectServerStatus() *ServerStatus {
ss := &ServerStatus{}
procs, err := ps.Processes()
checkErrorOrQuit(err, "list processes failed")
for _, proc := range procs {
path, err := proc.Path()
path, err := getProcPath(proc)
if err != nil {
if pathErr, ok := err.(*os.PathError); ok {
path = pathErr.Path
if strings.HasSuffix(path, " (deleted)") {
path = path[:len(path)-10]
}
} else {
continue
}
continue
}

relpath, err := filepath.Rel(env.GoWorldRoot, path)
Expand Down Expand Up @@ -84,5 +94,18 @@ func showServerStatus(ss *ServerStatus) {
showMsg("%d dispatcher running, %d/%d gates running, %d/%d games (%s) running", ss.NumDispatcherRunning,
ss.NumGatesRunning, len(config.GetGateIDs()),
ss.NumGamesRunning, len(config.GetGameIDs()),
ss.ServerID)
ss.ServerID,
)

var listProcs []ps.Process
listProcs = append(listProcs, ss.DispatcherProcs...)
listProcs = append(listProcs, ss.GameProcs...)
listProcs = append(listProcs, ss.GateProcs...)
for _, proc := range listProcs {
path, err := getProcPath(proc)
if err != nil {
path = "[" + proc.Executable() + "]"
}
showMsg("\t%-10d%-16s%s", proc.Pid(), proc.Executable(), path)
}
}

0 comments on commit 8377806

Please sign in to comment.