print kill_subject % params
print kill_body % params
try:
- self.pid = os.fork()
- if self.pid == 0:
+ pid = os.fork()
+ if pid == 0:
print "Slice %s is being killed." % self.name
vserver = VServer(self.name)
vserver.stop()
os._exit(0)
+ else:
+ os.waitpid(pid,0)
except Exception, err:
- print "Warning: Exception received while killing slice %s: %s" % self.name, err
+ print "Warning: Exception received while killing slice %s: %s" \
+ % self.name, err
if (time.time() - self.killmail) > email_timeout:
slicemail(self.name, kill_subject % params, kill_body % params)
print "Sending KILL email for slice %s" % self.name
vserver.stop()
vserver.start(wait = False)
os._exit(0)
+ else:
+ os.waitpid(pid,0)
except Exception, err:
print "Warning: Exception received while resetting slice %s:" \
% self.name, err
# Match slice name against system slice patterns
is_system_slice = filter(None, [re.match(pattern, slice['name']) for pattern in system_slices])
- if is_system_slice and params['rss'] > 100:
- # Do not reset system slices, just warn once
- if slice['name'] not in warned:
- warned.append(slice['name'])
- if debug:
- print alarm_subject % params
- print alarm_body % params
- else:
- print "Warning slice " + slice['name']
- slicemail(slice['name'], alarm_subject % params, alarm_body % params)
+ if is_system_slice:
+ if slice['name'] not in warned:
+ warned.append(slice['name'])
+ if debug:
+ print alarm_subject % params
+ print alarm_body % params
+ else:
+ print "Warning slice " + slice['name']
+ slicemail(slice['name'], alarm_subject % params,
+ alarm_body % params)
else:
# Reset slice
if not resetlist.has_key(slice['name']):