sdt

SDT - The Simple Daemon Tools

SDT - The Simple Daemon Tools

$ npm install sdt -g
{
    "cwd": "/",
    "command": "true",
    "args": [],
    "out": "/dev/null",
    "err": "/dev/null",
    "monitorOut": "monitor.log",
    "pidFile": "/dev/null"
}
$ sdt start --config /etc/myd/conf.json # starts daemon and prints daemon's pid 
$ sdt start-monitored --config /etc/myd/conf.json # starts daemon  
$ sdt status --config /etc/myd/conf.json # prints daemon status 
$ sdt stop --config /etc/myd/conf.json # stops daemon 
var sdt = require('sdt');
 
var conf = {
    cwd: '/',
    command: 'node',
    args: ['/usr/local/lib/node_modules/myd'],
    out: '/var/log/myd.out.log',
    err: '/var/log/myd.err.log',
    pidFile: '/var/run/myd.pid'
};
 
sdt.start(conf, function(errpid) {
    if (err) {
        console.log('Fail to start daemon: %s', err);
        return;
    }
    console.log('Daemon started with pid: %s', pid);
});
 
sdt.getStatus(conf, function(errstatus) {
    if (err) {
        console.log('Fail to get status: %s', err);
        return;
    }
    console.log('Daemon %s', (status ? 'is running' : 'was stopped'));
});
 
sdt.stop(conf, function(erralreadyStopped) {
    if (err) {
        console.log('Fail to stop: %s', err)
        return;
    }
    console.log('Daemon was ' + (alreadyStopped ? 'already stopped' : 'stopped'));
});