2014-10-07 63 views
0

我正在使用邊緣模塊(https://github.com/tjanczuk/edge)從sql數據庫中讀取。功能如下:Node.js服務器正在打破沒有任何錯誤

function getBetweenRows(cb) { 
    //console.log("lastcheckedID inside function ", lastCheckedID); 
    //console.log("lastinsertID inside function ", lastInsertID); 
    console.log("here 2"); 
    var query = { 
     connectionString: "Data Source=localhost;Initial Catalog=db-name;Integrated Security=True", 
     //source: "SELECT * FROM CustomerMaster WHERE CustomerID BETWEEN '" + lastCheckedID + "' AND '" + lastInsertID + "';" 
        source: "SELECT * FROM CustomerMaster WHERE CustomerID BETWEEN '2965' AND '2972';" 
    }; 

    console.log("query is ", query.source); 
    console.log("here 3"); 
    var getRows = edge.func('sql', query); 
    console.log("here 4"); 
    getRows(null, function(error, result) { 
    console.log("here 5"); 
     if (error) { 
      console.log(error); 
      throw error; 
      log.error({rows:error}); 

     } 
     rows = result; 
     log.info({rows:rows}); 
     console.log(rows); 
    console.log("here 6"); 

     cb(rows); 
    }); 
} 

有趣的是這段代碼在其他一些系統上完美地工作。但在這個特定的系統上,它會打印到here 4,然後服務器中斷。它不顯示任何錯誤。我如何找出問題所在?

+1

嘗試'try {} catch' – laggingreflex 2014-10-07 05:48:27

回答

0

對不起,我不從什麼張貼上的是什麼diferent系統diferently發生知道,但如果你想調試,發現兩個系統一步一步個體差異,請使用節點調試器:

http://nodejs.org/api/debugger.html

這很值得去了解。

另外,我注意到當拋出錯誤時,我還不能解釋的偶然問題。嘗試在違規系統上註釋掉throw line(也可能是log.js調用)。如果這解決了問題,那麼您知道這是與錯誤有關的。

讓我知道你在找什麼。

相關問題