Node.js 프로젝트가 마침표에 가까워질 수록 프로세스를 어떻게 관리해야 할지 고민한다. 요즘은 Node.js Domain API에 완전히 당해서 넋이 나가 있었다.


PM2 로 App 을 시작 할 때 Debug Log를 감시하고 싶을 때가 있다. 아이러니하게도 node debug로 사용된 로그는 stderr 로 출력된다.



stdout 으로 출력하기 위해서는 환경변수를 추가해야 한다.


DEBUG_FD=1


아래는 pm2 설정 JSON 이다. 취향에 따라서 직접 명령으로 실행해도 무관 하다.


  • pm2-test.json
{
    "apps": [
        {
            "name"             : "test-app",
            "script"           : "./test.js",
            "error_file"       : "./logs/app/test-app.stderr.log",
            "out_file"         : "./logs/app/test-app.stdout.log",
            "pid_file"         : "./pids/test-app.pid",
            "instances"        : 0,
            "min_uptime"       : "1000s",
            "max_restarts"     : 15,
            "watch"            : false,
            "ignore_watch"     : ["[\\/\\\\]\\./", "node_modules"],
            "merge_logs"       : true,
            "exec_interpreter" : "node",
            "exec_mode"        : "cluster_mode",
            "autorestart"      : false,
            "vizion"           : false,
            "env"              : {
                "NODE_ENV"     : "development",
                "DEBUG"        : "*",
                "DEBUG_FD"     : 1
            }
        }
    ]
}


명령어를 실행 시 node debug로 사용된 로그는 stdout 으로 출력된다.


pm2 start pm2-test.json



정상적으로 출력 되는 것을 확인 할 수 있다.


'Nodejs' 카테고리의 다른 글

NPMv3 사용하기  (0) 2016.04.04
Node.js와 ECMAScript 2015 (ES6)  (0) 2016.01.04
Node.js NPM Previous Version 설치 하기  (0) 2015.12.08
play.node(2015) 후기  (0) 2015.11.13
Nodejs Express 4.x File Upload 설정 하기  (0) 2015.02.10

+ Recent posts