0

我将根据文档进行

https://github.com/felixge/node-airbrake

但是当我尝试它时,我得到了

app.error(airbrake.expressHandler());
                 ^
TypeError: Object #<Airbrake> has no method 'expressHandler'

我的代码如下:

// dependencies
var express = require('express')
  , http = require('http')
  , logger = require('./app/lib/logger')
  , airbrake = require('airbrake').createClient('HIDDEN');

var app = express();
var env = app.settings.env;

// controllers
var InvoiceController = require('./app/controllers/invoice_controller')
  , IndexController = require('./app/controllers/index_controller')
  , PaymentController = require('./app/controllers/payment_controller')
  , AccountController = require('./app/controllers/account_controller')
  ;

// configurations and middleware stack
app.configure(function(){
  app.set('port', process.env.PORT || 3000);
  app.set('views', __dirname + '/app/views');
  app.set('view engine', 'jade');
  app.use(express.favicon());
  app.use(express.logger('dev'));
  app.use(express.bodyParser());
  app.use(express.methodOverride());
  app.use(app.router);
  app.use(express.static(__dirname + '/public'));
});

if (env === 'production' || env === 'staging' || env === 'qa') {
  app.error(airbrake.expressHandler());
} else {
  app.error(airbrake.expressHandler());
  //app.use(express.errorHandler());
}

throw new Error("testing express handler");
4

1 回答 1

2

看起来该特定处理程序是在上次正式发布之后添加的,并且尚未在 npm 存储库中:尝试从 github 安装最新代码。

于 2012-08-24T02:14:23.260 回答