Skip to content
This repository was archived by the owner on Mar 22, 2019. It is now read-only.

Commit 072a3fe

Browse files
author
Chanlito
committed
log app exception filter
1 parent c8d5756 commit 072a3fe

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

src/exception/app-exception.filter.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
import { Catch, ExceptionFilter, HttpStatus } from '@nestjs/common';
22

3+
import { Logger } from '../logger';
4+
35
@Catch()
46
export class ApplicationExceptionFilter implements ExceptionFilter {
7+
constructor(private readonly logger?: Logger) {}
8+
59
catch(err: any, res: any) {
610
const statusCode = typeof err.getStatus === 'function' ? err.getStatus() : HttpStatus.INTERNAL_SERVER_ERROR;
711
const response = typeof err.getResponse === 'function' ? err.getResponse() : 'Internal Server Error';
@@ -26,5 +30,13 @@ export class ApplicationExceptionFilter implements ExceptionFilter {
2630
}
2731

2832
res.status(statusCode).json(responseBody);
33+
34+
if (this.logger) {
35+
if (statusCode >= 500) {
36+
this.logger.error(responseBody, responseBody.message);
37+
} else {
38+
this.logger.warn(responseBody, responseBody.message);
39+
}
40+
}
2941
}
3042
}

0 commit comments

Comments
 (0)