将 Opbeat 与 Totaljs 集成

Integrating Opbeat with Totaljs

我想将 Otbeat 与 Total Js 一起使用。 您知道如何将此工具与 Total 一起使用吗?

谢谢

虽然我没试过,但我相信在 Total.js 中使用 Opbeat 的方法如下

将波纹管代码放在 require('total.js').http(....) 上方,或者基本上放在使用此行 require('total.js').http(....) 的文件的最顶部。

// globally available OPBEAT can be used throughout the application
global.OPBEAT = require('opbeat').start({
  // see documentations for more info
  appId: '<app id>',
  organizationId: '<org id>',
  secretToken: '<token>'
});

require('total.js').http(....);

为了记录错误或任何你想要的,你可以使用任何 framework events

但是由于框架在出现错误时不会发出事件,您可以做的最简单的事情就是覆盖波纹管函数,将波纹管代码放在某个定义文件中

Framework.prototype.onError = function(err, name, uri) {

    OPBEAT.captureError(err);

    // original code can be left as is
    console.log('======= ' + (new Date().format('yyyy-MM-dd HH:mm:ss')) + ': ' + (name ? name + ' ---> ' : '') + err.toString() + (uri ? ' (' + parser.format(uri) + ')' : ''), err.stack);
    return this;
};

编辑

在 Opbeat 仪表板

中显示 URL 可能需要其中一个
F.on('request', function(req, res) {

    OPBEAT.setTransactionName(req.method + ' ' + req.url);

});

F.on( 'controller', function( controller, name ) {

  OPBEAT.setTransactionName(controller.route.method + ' ' + controller.route.url);

});