From 317289ac2a77345d637eda998148a177a0528ff1 Mon Sep 17 00:00:00 2001 From: Tom Moor Date: Wed, 16 Jun 2021 08:52:54 -0700 Subject: [PATCH] fix: Error in Datadog tracking, if only we had TS :( --- server/utils/metrics.js | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/server/utils/metrics.js b/server/utils/metrics.js index ebbf4ecb..9db6e129 100644 --- a/server/utils/metrics.js +++ b/server/utils/metrics.js @@ -9,11 +9,7 @@ if (process.env.DD_API_KEY) { }); } -export function gauge( - key: string, - value: number, - tags?: { [string]: string } -): void { +export function gauge(key: string, value: number, tags?: string[]): void { if (!process.env.DD_API_KEY) { return; } @@ -24,16 +20,20 @@ export function gauge( export function gaugePerInstance( key: string, value: number, - tags?: { [string]: string } = {} + tags?: string[] = [] ): void { if (!process.env.DD_API_KEY) { return; } - return metrics.gauge(key, value, { - ...tags, - instance: process.env.INSTANCE_ID || process.env.HEROKU_DYNO_ID, - }); + const instanceId = process.env.INSTANCE_ID || process.env.HEROKU_DYNO_ID; + if (!instanceId) { + throw new Error( + "INSTANCE_ID or HEROKU_DYNO_ID must be set when using Datadog" + ); + } + + return metrics.gauge(key, value, [...tags, `instance:${instanceId}`]); } export function increment(key: string, tags?: { [string]: string }): void {