Automatic Instrumentation

By default, Sentry error events will not get trace context unless you configure the scope with the transaction, as illustrated in the example below.

const Sentry = require("@sentry/node");
const Tracing = require("@sentry/tracing");
// Note: You MUST import the package for tracing to work

const http = require("http");

  dsn: "",
  integrations: [
    // enable HTTP calls tracing
    new Sentry.Integrations.Http({ tracing: true }),

  // We recommend adjusting this value in production, or using tracesSampler
  // for finer control
  tracesSampleRate: 1.0,

const transaction = Sentry.startTransaction({
  op: "transaction",
  name: "My Transaction",

// Note that we set the transaction as the span on the scope.
// This step makes sure that if an error happens during the lifetime of the transaction
// the transaction context will be attached to the error event
Sentry.configureScope(scope => {

let request;

try {
  // this should generate an http span
  request = http.get("", res => {
    console.log(`STATUS: ${res.statusCode}`);
    console.log(`HEADERS: ${JSON.stringify(res.headers)}`);

  // this error event should have trace context
} catch (err) {

request.on("close", () => {

Retrieving a Transaction

In cases where you want to attach Spans to an already ongoing Transaction you can use Sentry.getCurrentHub().getScope().getTransaction(). This function will return a Transaction in case there is a running Transaction otherwise it returns undefined. If you are using our Express integration by default we attach the Transaction to the Scope. So you could do something like this:

app.get("/success", function successHandler(req, res) {
  const transaction = Sentry.getCurrentHub()

  if (transaction) {
    let span = transaction.startChild({
      op: "encode",
      description: "parseAvatarImages",
    // Do something
Help improve this content
Our documentation is open source and available on GitHub. Your contributions are welcome, whether fixing a typo (drat!) to suggesting an update ("yeah, this would be better").