Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
else{
res.writeHead(200);
}
res.end(data);
});
}),
project,
io = require('socket.io').listen(http);
clientsrcfolder = "/../client";
io.set('log level', 1); // reduce logging
http.listen(parameters.ServerPort);
console.log('[OS]:'+os.platform());
if(os.platform().indexOf('win') === -1 || os.platform() === 'darwin'){
project = new (require('forever').Monitor) (require('path').join(__dirname,'GmeProject.js'),{'options':[parameters.ProjectPort,parameters.ProjectName,parameters.BranchName]});
project.start();
}
else{
project = require('child_process').spawn('cmd');
project.stdout.on('data', function (data) {
console.log('[P-stdout] ' + data);
if(data.toString().indexOf("no more clients, quit") !== -1){
console.log('[P-stdout] restarting project');
project.stdin.write('node --debug GmeProject.js '+parameters.ProjectPort+" "+parameters.ProjectName+" "+parameters.BranchName+'\n');
}
});
project.stderr.on('data', function (data) {
console.log('[P-stderr] ' + data);
});
project.stdin.write('node --debug GmeProject.js '+parameters.ProjectPort+" "+parameters.ProjectName+" "+parameters.BranchName+'\n');
}
}
else{
res.writeHead(200);
}
res.end(data);
});
}),
project,
io = require('socket.io').listen(http);
clientsrcfolder = "/../client";
io.set('log level', 1); // reduce logging
http.listen(parameters.ServerPort);
if(os.platform().indexOf('win') === -1){
project = new (require('forever').Monitor) (require('path').join(__dirname,'proj3ct.js'),{'options':[parameters.ProjectPort,parameters.ProjectName,parameters.BranchName]});
project.start();
}
else{
project = require('child_process').spawn('cmd');
project.stdout.on('data', function (data) {
console.log('[P-stdout] ' + data);
if(data.toString().indexOf("no more clients, quit") !== -1){
console.log('[P-stdout] restarting project');
project.stdin.write('node --debug proj3ct.js '+parameters.ProjectPort+" "+parameters.ProjectName+" "+parameters.BranchName+'\n');
}
});
project.stderr.on('data', function (data) {
console.log('[P-stderr] ' + data);
});
project.stdin.write('node --debug proj3ct.js '+parameters.ProjectPort+" "+parameters.ProjectName+" "+parameters.BranchName+'\n');
}
restart Перезапускает сценарий.
restartall Перезапускает все сценарии, запущенные с помощью Forever.
cleanlogs Удаляет все записи в журналах.
logs Выводит список всех журналов для всех Forever-процессов.
list Выводит список всех выполняемых сценариев.
config Выводит перечень пользовательских конфигураций.
set <ключ> <значение> Устанавливает для конфигурации пару ключ-значение.
clear <ключ> Очищает значение ключа конфигурации.
logs <сценарий|индекс> Закрывает журналы для сценария или индекса.
columns add <столбец> Добавляет столбец к списку вывода Forever.
columns rm <столбец> Удаляет столбец для списка вывода Forever.
columns set <столбцы> Устанавливает все столбцы для списка вывода Forever.
*/
var forever = require('forever');
var child = new (forever.Monitor)('your-filename.js', {
max: 3,
silent: true,
options: []
});
child.on('exit', this.callback);
child.start();
exports.spawn = function spawn(options, done) {
var droneId = 'drone' + (i++);
socket = droneRoot + droneId + '.sock';
options.pidFile = options.pidFile || socket.replace(/[.]sock$/,'') + '.pid';
options.silent = false;
var monitor = new forever.Monitor(['node',loaderPath,socket, masterSocketPath],options);
var drone = new EventEmitter2();
drone.socket = droneId;
monitor.on('start',function(monitor, file, data) {
drone.data = data;
});
monitor.start();
var connected = false;
function lookForDrone(event, droneSocket) {
if (droneSocket !== socket) {
return;
}
connected = true;
haibu.socket.removeListener('drone.ready', lookForDrone);
dnode.connect(socket, function(client, conn) {
conn.on('ready',function() {