runmqserver: fix/improve verifySingleProcess #420
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
A couple of patches to improve the
runmqserver
check for being the only process.1. cmd/runmqserver.verifySingleProcess: optimize
Instead of using
ps
, which reads three/proc
files per each process(
stat
,status
, andcmdline
), usepgrep
which only reads cmdline.Also,
pgrep
output is simpler -- it only lists PIDs, one per line,so to find out the number of processes we just need to count newlines.
2. cmd/runmqserver.verifySingleProcess: improve
Check
command.Run
error, print it out (as debug only).Simplify
verifyOnlyOne()
return values (bool
is enough).Add more logging.