Skip to content

Commit 910ce68

Browse files
committed
chore: add instrumentation
Signed-off-by: William Phetsinorath <william.phetsinorath-open@interieur.gouv.fr>
1 parent 18bebf0 commit 910ce68

File tree

3 files changed

+1560
-18
lines changed

3 files changed

+1560
-18
lines changed

apps/server-nestjs/package.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,10 @@
4646
"@nestjs/event-emitter": "^3.0.1",
4747
"@nestjs/platform-express": "^11.0.1",
4848
"@nestjs/schedule": "^5.0.1",
49+
"@opentelemetry/auto-instrumentations-node": "^0.70.1",
50+
"@opentelemetry/sdk-metrics": "^2.5.1",
51+
"@opentelemetry/sdk-node": "^0.212.0",
52+
"@opentelemetry/sdk-trace-node": "^2.5.1",
4953
"@prisma/client": "^6.0.1",
5054
"@ts-rest/core": "^3.52.1",
5155
"@ts-rest/fastify": "^3.52.1",
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
import { NodeSDK } from '@opentelemetry/sdk-node'
2+
import { ConsoleSpanExporter } from '@opentelemetry/sdk-trace-node'
3+
import { getNodeAutoInstrumentations } from '@opentelemetry/auto-instrumentations-node'
4+
import {
5+
PeriodicExportingMetricReader,
6+
ConsoleMetricExporter,
7+
} from '@opentelemetry/sdk-metrics'
8+
9+
function createSdk() {
10+
return new NodeSDK({
11+
traceExporter: new ConsoleSpanExporter(),
12+
metricReader: new PeriodicExportingMetricReader({
13+
exporter: new ConsoleMetricExporter(),
14+
}),
15+
instrumentations: [getNodeAutoInstrumentations()],
16+
})
17+
}
18+
19+
export function start() {
20+
const sdk = createSdk()
21+
sdk.start()
22+
process.on('SIGTERM', () => {
23+
sdk.shutdown()
24+
})
25+
}
26+
27+
start()

0 commit comments

Comments
 (0)