def start(self):
if self.process or self.is_running():
self.logger.error('Server already running call close_server first')
return
if len(self.arguments) == 0:
self.logger.info('Launching server and waiting for child processes')
else:
self.logger.info('Launching server and waiting for child processes with extra arguments, %s' % self.arguments)
try:
process = subprocess.Popen([self.path, '-log', self.arguments])
process = psutil.Process(process.pid)
self.attach(process)
except subprocess.CalledProcessError as ex:
self.logger.exception('Server failed to start... %s' % ex)
return False
except psutil.NoSuchProcess as ex:
self.logger.exception('Server started but crashed shortly after... %s' % ex)
return False
self.logger.info('Server running successfully')
return True
评论列表
文章目录