Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 如何在Node/Express中实现Sentry性能跟踪(@Sentry/tracing)_Node.js_Express_Sentry - Fatal编程技术网

Node.js 如何在Node/Express中实现Sentry性能跟踪(@Sentry/tracing)

Node.js 如何在Node/Express中实现Sentry性能跟踪(@Sentry/tracing),node.js,express,sentry,Node.js,Express,Sentry,我正在尝试将@sentry/tracing集成到NodeJS+Express应用程序中 似乎没有我能找到的任何文档(我已经向文档回购提交了一个问题) 我已经浏览了@sentry/跟踪代码,似乎有一个快速集成可用 基于集成源代码,看起来应该像这样实例化: const express = require('express'); const app = express(); const Sentry = require('@sentry/node'); const { Integrations }

我正在尝试将@sentry/tracing集成到NodeJS+Express应用程序中

似乎没有我能找到的任何文档(我已经向文档回购提交了一个问题)

我已经浏览了@sentry/跟踪代码,似乎有一个快速集成可用

基于集成源代码,看起来应该像这样实例化:

const express = require('express');

const app = express();

const Sentry = require('@sentry/node');
const { Integrations } = require( "@sentry/tracing");

Sentry.init({ 
    dsn: __MY_SENTRY_DSN__,
    integrations: [
        new Integrations.Express({app}),
    ]
});

我已经试过了,但在Sentry中没有得到任何跟踪数据。

好的,所以基本上,我们这里需要的主要跟踪组件是一个单独的express处理程序

该跟踪处理程序实际上是
@sentry/node
包的一部分(因为逻辑),可以作为
sentry.Handlers.tracingHandler

因此,正确的初始化步骤是:

Sentry.init({ 
    tracesSampleRate: 1.0,  // <- ** you need this one here (Note: the docs for the BrowserTracing version says to use less for production environment or it might suck all your quota) **
    dsn: __MY_SENTRY_DSN__,
    // ...
});

app.use(Sentry.Handlers.requestHandler());

app.use(Sentry.Handlers.tracingHandler()); // <- ** and add this one here **

// your route handlers

app.use(Sentry.Handlers.errorHandler());
Sentry.init({
TraceSamplerate:1.0//