forked from mirror/MCSManager
新增 异常处理
This commit is contained in:
parent
2feb500199
commit
763f76307c
@ -154,6 +154,7 @@ class ServerProcess extends EventEmitter {
|
|||||||
PortBindings: PortBindingsObj
|
PortBindings: PortBindingsObj
|
||||||
}
|
}
|
||||||
}).then((container) => {
|
}).then((container) => {
|
||||||
|
// 启动虚拟化容器
|
||||||
auxContainer = container;
|
auxContainer = container;
|
||||||
return auxContainer.start();
|
return auxContainer.start();
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
@ -181,18 +182,19 @@ class ServerProcess extends EventEmitter {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
// 容器进程事件传递
|
// 容器工作完毕退出事件
|
||||||
auxContainer.wait(() => {
|
auxContainer.wait(() => {
|
||||||
self.emit('exit', 0);
|
self.emit('exit', 0);
|
||||||
self.stop();
|
self.stop();
|
||||||
});
|
});
|
||||||
|
// 容器流错误事件传递
|
||||||
stream.on('error', (err) => {
|
stream.on('error', (err) => {
|
||||||
MCSERVER.error('服务器运行时异常,建议检查配置与环境', err);
|
MCSERVER.error('服务器运行时异常,建议检查配置与环境', err);
|
||||||
self.printlnStdin(['Error:', err.name, '\n Error Message:', err.message, '\n 进程 PID:', self.process.pid || "启动失败,无法获取进程。"]);
|
self.printlnStdin(['Error:', err.name, '\n Error Message:', err.message, '\n 进程 PID:', self.process.pid || "启动失败,无法获取进程。"]);
|
||||||
self.stop();
|
self.stop();
|
||||||
self.emit('error', err);
|
self.emit('error', err);
|
||||||
});
|
});
|
||||||
|
// 判断启动是否成功
|
||||||
if (!process.pid) {
|
if (!process.pid) {
|
||||||
MCSERVER.error('服务端进程启动失败,建议检查启动命令与参数是否正确,pid:', self.process.pid);
|
MCSERVER.error('服务端进程启动失败,建议检查启动命令与参数是否正确,pid:', self.process.pid);
|
||||||
self.stop();
|
self.stop();
|
||||||
@ -212,7 +214,9 @@ class ServerProcess extends EventEmitter {
|
|||||||
// 输出开服资料
|
// 输出开服资料
|
||||||
self.printlnCommandLine('服务端 ' + self.dataModel.name + " 执行开启命令.");
|
self.printlnCommandLine('服务端 ' + self.dataModel.name + " 执行开启命令.");
|
||||||
});
|
});
|
||||||
});
|
}).catch((err) => {
|
||||||
|
throw new Error("进程启动失败,建议检查配置参数");
|
||||||
|
});;
|
||||||
}
|
}
|
||||||
|
|
||||||
//统一服务端开启
|
//统一服务端开启
|
||||||
@ -315,8 +319,12 @@ class ServerProcess extends EventEmitter {
|
|||||||
|
|
||||||
send(command) {
|
send(command) {
|
||||||
if (this._run) {
|
if (this._run) {
|
||||||
this.process.stdin.write(iconv.encode(command, this.dataModel.ie) + '\n');
|
if (this.process.dockerContainer != null) {
|
||||||
// this.process.stdin.write('\n');
|
this.process.stdin.write(iconv.encode(command, this.dataModel.ie) + '\n');
|
||||||
|
} else {
|
||||||
|
this.process.stdin.write(iconv.encode(command, this.dataModel.ie));
|
||||||
|
this.process.stdin.write('\n');
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
|
Loading…
Reference in New Issue
Block a user