diff --git a/server/index.js b/server/index.js index 4c5638038..6e658cff3 100644 --- a/server/index.js +++ b/server/index.js @@ -1,5 +1,7 @@ // @flow import env from "./env"; // eslint-disable-line import/order +import "./tracing"; // must come before importing any instrumented module + import http from "http"; import debug from "debug"; import Koa from "koa"; @@ -12,12 +14,10 @@ import stoppable from "stoppable"; import throng from "throng"; import "./sentry"; import services from "./services"; -import { initTracing } from "./tracing"; import { checkEnv, checkMigrations } from "./utils/startup"; import { checkUpdates } from "./utils/updates"; checkEnv(); -initTracing(); checkMigrations(); // If a services flag is passed it takes priority over the enviroment variable diff --git a/server/tracing.js b/server/tracing.js index 91fdce37c..251f01a4c 100644 --- a/server/tracing.js +++ b/server/tracing.js @@ -1,13 +1,11 @@ // @flow -export function initTracing() { - // If the DataDog agent is installed and the DD_API_KEY environment variable is - // in the environment then we can safely attempt to start the DD tracer - if (process.env.DD_API_KEY) { - require("dd-trace").init({ - // SOURCE_COMMIT is used by Docker Hub - // SOURCE_VERSION is used by Heroku - version: process.env.SOURCE_COMMIT || process.env.SOURCE_VERSION, - }); - } +// If the DataDog agent is installed and the DD_API_KEY environment variable is +// in the environment then we can safely attempt to start the DD tracer +if (process.env.DD_API_KEY) { + require("dd-trace").init({ + // SOURCE_COMMIT is used by Docker Hub + // SOURCE_VERSION is used by Heroku + version: process.env.SOURCE_COMMIT || process.env.SOURCE_VERSION, + }); }