2

Nodeでエラーレポートを取得するにはどうすればよいですか? v0.6.15 を実行しています (単純な osx install DMG を使用)。未定義の変数を使用しようとすると、エラーが発生するたびにプロセスが停止し、理由が示されません。

PHP の error_reporting(E_ALL); のノード バージョンを探していると思います。

助言がありますか?

==編集==

奇妙な...わかりました...だから、実行したファイルでは問題なくエラーが発生することに気付きましたが、「必要な」ファイルではエラーが発生しません。

私が実行しているファイルには、単にこのコードがあります

process.on('uncaughtException', function(err) {
  console.log(err);
});

var ImageProcessor = require('./ImageProcessor').ImageProcessor;
var imageProcessor = new ImageProcessor();

imageProcessor.imageRequestEnd();

imageProcessor は、それが重要な場合は mootools クラスですが、他に特別なものを使用していません。

4

1 に答える 1

2

私はそのような動作を見たことがないという@Bradに同意しますが、一般に、NodeJSプログラムをデバッグしていて、それが殺される原因を知りたい場合は、次のような構成を使用できます。

process.on('uncaughtException', function(err) {
  console.log(err);
});

あなたのスクリプトで。

キャッチされない例外は、多くの場合、非常に深刻で予期しないエラーに遭遇したことを示しているため、回復する唯一の方法は再起動することです。これは、特定のアプリケーションに当てはまる場合とそうでない場合があります。いずれにせよ、これはデバッグに役立ちます。

ただし、@Brad が示すように、何も表示されない理由として最も可能性が高いのは、コンソール出力が何らかの形でリダイレクトされていることです。「forever」、「supervisor」、「screen」、または使用しているその他のプロセスラッパーを使用せずに実行してみてください。

于 2012-04-26T18:03:37.343 に答える