2015-04-05 44 views
0

我最近開始使用Openshift,到目前爲止它一直很棒。我目前的問題在於我的調試日誌沒有顯示在Openshift的日誌中。我曾經使用DEBUG=*,-express:* node ./bin/www在本地運行應用程序,它顯示了我需要的一切。到目前爲止,我還沒有想到如何將其轉換爲package.json文件,以便它按預期工作。在Openshift上運行debug node_module

package.json 
{ 
    "name": "APP", 
    "version": "0.0.1", 
    "private": true, 
    "scripts": { 
    "start": "DEBUG=*,-express:* node ./bin/www" 
    }, 
    "main": "./bin/www", 
    "dependencies": { ... } 

在我看來,它正在運行與main數據node命令,而不是我的非常優選的腳本。我相信調試模塊是我的代碼上發送垃圾郵件console.log()的好選擇。

在OpenShift日誌文件上,它啓動應用程序時顯示以下內容。這是我的理解,我期待找到--exec和改變。

DEBUG: Running node-supervisor with 
DEBUG: program './bin/www' 
DEBUG: --watch '/var/lib/openshift/<app_ID>/app-root/data/.nodewatch' 
DEBUG: --ignore 'undefined' 
DEBUG: --extensions 'node|js|coffee' 
DEBUG: --exec 'node' 
DEBUG: Starting child process with 'node ./bin/www' 

回答

0

如果你看一下文檔here 並搜索 「標誌」,你會發現這一點:

use_npm:

初始化使用NPM您的應用程序或服務啓動 而不是主管servername.js(其中servername.js基於 對您的package.json的值屬性)。

我仍然認爲你最好使用主管。但你可以通過在第一次使用require(「debug」)之前修改代碼內的調試值,至少作爲臨時解決方案。

HTH