Skip to content

Commit a36b38a

Browse files
committed
fix(api-core): implemented logger
1 parent 1508b6a commit a36b38a

File tree

5 files changed

+120
-4
lines changed

5 files changed

+120
-4
lines changed

apps/api-gateway/src/main.ts

Lines changed: 33 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,40 @@
1+
import { ConfigService } from "@nestjs/config";
12
import { NestFactory } from "@nestjs/core";
3+
import {
4+
FastifyAdapter,
5+
NestFastifyApplication,
6+
} from "@nestjs/platform-fastify";
7+
8+
import { AllConfigType, logger } from "@app/api-core";
29

310
import { AppModule } from "./app.module";
411

512
async function bootstrap() {
6-
const app = await NestFactory.create(AppModule);
7-
await app.listen(8080, "0.0.0.0");
13+
const fastifyAdapter = new FastifyAdapter({ logger });
14+
const app = await NestFactory.create<NestFastifyApplication>(
15+
AppModule,
16+
fastifyAdapter,
17+
);
18+
const configService = app.get(ConfigService<AllConfigType>);
19+
20+
app.setGlobalPrefix(
21+
configService.getOrThrow("app.API_PREFIX", { infer: true }),
22+
{
23+
exclude: ["/"],
24+
},
25+
);
26+
27+
await app.listen(
28+
configService.getOrThrow("app.API_PORT", { infer: true }),
29+
configService.getOrThrow("app.API_HOST", { infer: true }),
30+
async () => {
31+
logger.info(
32+
`ENV: ${configService.getOrThrow("app.NODE_ENV", { infer: true })}`,
33+
configService.getOrThrow("app.NODE_ENV", { infer: true }),
34+
);
35+
36+
logger.info(`Server is up.`);
37+
},
38+
);
839
}
940
bootstrap();

packages/api-core/package.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,9 @@
1818
"@nestjs/common": "catalog:nestjs",
1919
"@nestjs/config": "catalog:nestjs",
2020
"class-transformer": "catalog:nestjs",
21-
"class-validator": "catalog:nestjs"
21+
"class-validator": "catalog:nestjs",
22+
"pino": "^9.3.1",
23+
"pino-pretty": "^11.2.1"
2224
},
2325
"devDependencies": {
2426
"@app/constants": "workspace:*",

packages/api-core/src/index.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,15 @@
11
import { Module } from "@nestjs/common";
22

3-
import { APIConfigModule } from "./modules/api-config/api-config.module";
3+
import {
4+
AllConfigType,
5+
APIConfigModule,
6+
} from "./modules/api-config/api-config.module";
7+
import { logger } from "./utils/logger";
48

59
@Module({
610
imports: [APIConfigModule],
711
controllers: [],
812
})
913
export class APICoreModule {}
14+
15+
export { APIConfigModule, logger, AllConfigType };
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import pino from "pino";
2+
import pinoPretty from "pino-pretty";
3+
4+
const prettyStream = pinoPretty({
5+
colorize: true,
6+
singleLine: true,
7+
});
8+
9+
export const logger = pino(prettyStream);

pnpm-lock.yaml

Lines changed: 68 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)