2022-06-11 16:12:06 -05:00
|
|
|
import { NestFactory } from '@nestjs/core';
|
2024-03-20 19:32:04 +01:00
|
|
|
import { envName, serverVersion } from 'src/domain/domain.constant';
|
|
|
|
|
import { otelSDK } from 'src/infra/instrumentation';
|
|
|
|
|
import { ImmichLogger } from 'src/infra/logger';
|
|
|
|
|
import { WebSocketAdapter } from 'src/infra/websocket.adapter';
|
|
|
|
|
import { MicroservicesModule } from 'src/microservices/microservices.module';
|
2022-06-11 16:12:06 -05:00
|
|
|
|
2023-12-14 11:55:40 -05:00
|
|
|
const logger = new ImmichLogger('ImmichMicroservice');
|
2023-06-07 10:56:08 -04:00
|
|
|
const port = Number(process.env.MICROSERVICES_PORT) || 3002;
|
2022-12-08 10:53:18 -05:00
|
|
|
|
2023-06-08 11:01:07 -04:00
|
|
|
export async function bootstrap() {
|
2024-03-12 01:19:12 -04:00
|
|
|
otelSDK.start();
|
2023-12-14 11:55:40 -05:00
|
|
|
const app = await NestFactory.create(MicroservicesModule, { bufferLogs: true });
|
|
|
|
|
app.useLogger(app.get(ImmichLogger));
|
2023-12-08 20:38:25 -05:00
|
|
|
app.useWebSocketAdapter(new WebSocketAdapter(app));
|
2022-06-19 08:16:35 -05:00
|
|
|
|
2023-06-07 10:56:08 -04:00
|
|
|
await app.listen(port);
|
2023-05-20 22:39:12 -04:00
|
|
|
|
2023-10-24 17:05:42 +02:00
|
|
|
logger.log(`Immich Microservices is listening on ${await app.getUrl()} [v${serverVersion}] [${envName}] `);
|
2022-06-11 16:12:06 -05:00
|
|
|
}
|