将 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);
});
我想将 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);
});