node에서 forever-monitor 사용하는 법

조회수 2059회

node에서

github에서 forever-monitor 보고 monitor.js를 이렇게 만들었는데요

  1. 이 코드는 forever 로 실행하나요 아니면 nodejs 로 실행하나요?
  2. 실행을 중지하려면 어떻게 해야하나요?
  3. 이 코드에서 찍은 console.log()는 app.js의 console.log()와 함께 같이 logFile에 저장되나요?
/* monitor.js */
var forever = require('forever-monitor');
var time = require('./time');

var maxRestart = 20;

var now = time.getFormString();

var child = new (forever.Monitor)('app.js', {
    max: maxRestart,
    silent: true,
    args: [],
    'logFile':'log/'+now+'.log', 
    'outFile':'./'+now+'.out', 
    'errFile':'./'+now+'.err'
});

child.on('restart', function() {
    console.log(time.getKoreaString() + ', forever restart');
});

child.on('exit', function () {
    console.log(time.getKoreaString() + ', app.js has exited after'+ maxRestart+' restarts');
});

child.start();

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • 프로그램 내에서 실행하는게 아니라면 forever-monitor가 아닌 forever를 사용하시는게 맞을 듯 합니다. 위의 설정대로 실행하시려면

    TIME=`date +%Y%m%d%H%M%S`
    forever start -m 20 -s -l log/$TIME.log -o $TIME.out -e $TIME.err app.js 
    

    실행을 중지하시려면 forever stop app.js를 실행하시면 됩니다. 그리고, forever의 실행 로그는 log/$TIME.log에, 앱에서 출력한 결과는 $TIME.out에 출력됩니다.

    https://github.com/foreverjs/forever

    • (•́ ✖ •̀)
      알 수 없는 사용자
    • 정말 감사합니다 2016.4.11 14:50

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)