Skip to content

Commit 1b1770f

Browse files
committed
Made OpenTelemetryServer closeable
1 parent af445c5 commit 1b1770f

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

packages/api/src/metrics/OpenTelemetryServer.ts

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
import {
2+
closeable,
3+
Closeable,
24
Sequencer,
35
SequencerModule,
46
sequencerModule,
@@ -32,10 +34,13 @@ export type OpenTelemetryServerConfig = {
3234
};
3335

3436
@sequencerModule()
37+
@closeable()
3538
export class OpenTelemetryServer
3639
extends SequencerModule<OpenTelemetryServerConfig>
37-
implements DependencyFactory
40+
implements DependencyFactory, Closeable
3841
{
42+
private sdk?: NodeSDK;
43+
3944
public constructor(
4045
@inject("Sequencer") private readonly sequencer: Sequencer<any>
4146
) {
@@ -92,10 +97,15 @@ export class OpenTelemetryServer
9297
});
9398

9499
sdk.start();
100+
this.sdk = sdk;
95101

96102
// TODO Write logger to directly integrate with our logging library
97103
diag.setLogger(new DiagConsoleLogger(), DiagLogLevel.ERROR);
98104

99105
log.info("OpenTelemetryServer started");
100106
}
107+
108+
public async close() {
109+
await this.sdk?.shutdown();
110+
}
101111
}

0 commit comments

Comments
 (0)