Lines 98-103
def pidof(name, docker='/var/run/docker.pid'):
|
Link Here
|
---|
|
98 |
try: |
98 |
try: |
99 |
with open(cmdline, 'r') as fd: |
99 |
with open(cmdline, 'r') as fd: |
100 |
commandline = fd.read() |
100 |
commandline = fd.read() |
|
|
101 |
link = os.readlink(os.path.join('/proc', proc, 'exe')) |
101 |
except EnvironmentError: |
102 |
except EnvironmentError: |
102 |
continue |
103 |
continue |
103 |
# kernel thread |
104 |
# kernel thread |
Lines 115-127
def pidof(name, docker='/var/run/docker.pid'):
|
Link Here
|
---|
|
115 |
log.error('Failed getting parent: %s', ex) |
116 |
log.error('Failed getting parent: %s', ex) |
116 |
|
117 |
|
117 |
args = commandline.split('\0') |
118 |
args = commandline.split('\0') |
118 |
if cmd[0] not in args and not commandline.startswith(name): |
119 |
if len(cmd) != 1 or link not in cmd: |
119 |
log.debug('skip %d: %s', pid, commandline) |
120 |
if cmd[0] not in args and not commandline.startswith(name): |
120 |
continue |
121 |
log.debug('skip %d: %s', pid, commandline) |
121 |
if len(args) >= len(cmd) > 1: |
|
|
122 |
if any(a != c for a, c in zip(args, cmd)): |
123 |
log.debug('mismatch %d: %r != %r', pid, args, cmd) |
124 |
continue |
122 |
continue |
|
|
123 |
if len(args) >= len(cmd) > 1: |
124 |
if any(a != c for a, c in zip(args, cmd)): |
125 |
log.debug('mismatch %d: %r != %r', pid, args, cmd) |
126 |
continue |
125 |
log.info('found %d: %r', pid, commandline) |
127 |
log.info('found %d: %r', pid, commandline) |
126 |
result.add(pid) |
128 |
result.add(pid) |
127 |
|
129 |
|