Skip to content

Commit e5766fc

Browse files
AmineAfiaarcoraven
andauthored
added dd tracing (#584)
* added dd tracing * format * added env var to control Datadog tracer --------- Co-authored-by: Phillip Ho <arcoraven@gmail.com>
1 parent 8e97af5 commit e5766fc

File tree

5 files changed

+291
-7
lines changed

5 files changed

+291
-7
lines changed

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@
5454
"cron-parser": "^4.9.0",
5555
"crypto": "^1.0.1",
5656
"crypto-js": "^4.2.0",
57+
"dd-trace": "^5.19.0",
5758
"dotenv": "^16.0.3",
5859
"ethers": "5",
5960
"ethers-aws-kms-signer": "^1.3.2",

src/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import "./polyfill";
22
import { initServer } from "./server";
33
import { env } from "./utils/env";
44
import { logger } from "./utils/logger";
5+
import "./utils/tracer";
56
import { initWorker } from "./worker";
67

78
const main = async () => {

src/utils/env.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ export const env = createEnv({
8383
.enum(["default", "sandbox", "server_only", "worker_only"])
8484
.default("default"),
8585
GLOBAL_RATE_LIMIT_PER_MIN: z.coerce.number().default(400 * 60),
86+
DD_TRACER_ACTIVATED: z.coerce.boolean().default(false),
8687
},
8788
clientPrefix: "NEVER_USED",
8889
client: {},
@@ -110,6 +111,7 @@ export const env = createEnv({
110111
REDIS_URL: process.env.REDIS_URL,
111112
ENGINE_MODE: process.env.ENGINE_MODE,
112113
GLOBAL_RATE_LIMIT_PER_MIN: process.env.GLOBAL_RATE_LIMIT_PER_MIN,
114+
DD_TRACER_ACTIVATED: process.env.DD_TRACER_ACTIVATED,
113115
},
114116
onValidationError: (error: ZodError) => {
115117
console.error(

src/utils/tracer.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import tracer from "dd-trace";
2+
import {env} from "./env";
3+
4+
if (env.DD_TRACER_ACTIVATED) {
5+
tracer.init(); // initialized in a different file to avoid hoisting.
6+
} else {
7+
console.info("DD_TRACER_ACTIVATED is not activated");
8+
}
9+
10+
export default tracer;

0 commit comments

Comments
 (0)