Skip to content

Commit d628cec

Browse files
committed
feat: add metrics
1 parent 2327ebe commit d628cec

2 files changed

Lines changed: 6 additions & 1 deletion

File tree

src/index.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import { Arrays, Objects } from 'cafe-utility'
44
import { IncomingMessage, ServerResponse, createServer } from 'http'
55
import fetch from 'node-fetch'
6+
import { metrics } from './metrics'
67
import { Target, getHealthyTarget } from './target'
78
import { RequestContext, ResponseContext } from './types'
89
import { fetchWithTimeout, respondWithFetchPromise } from './utility'
@@ -38,7 +39,7 @@ function main() {
3839
try {
3940
await fetch(target.url, { timeout: 10_000 })
4041
response.statusCode = 200
41-
response.end('200 OK')
42+
response.end(`200 OK - ${metrics.requests} requests served`)
4243
return
4344
} catch (error) {
4445
target.lastErrorAt = Date.now()
@@ -66,6 +67,7 @@ function main() {
6667
const parsedBody = JSON.parse(context.body)
6768
const id = parsedBody.id
6869
delete parsedBody.id
70+
metrics.requests++
6971
const key = `${target.url}_${JSON.stringify(parsedBody)}`
7072
const cachedPromise = Objects.getFromFastIndexWithExpiracy(
7173
fastIndex,

src/metrics.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
export const metrics = {
2+
requests: 0
3+
}

0 commit comments

Comments
 (0)