Configuration
Default Configuration
- LoggingInterceptor: Logs all incoming requests.
- Default Logger Configuration: Logs finish request with request ID and time, and all exceptions with stack trace.
Advanced Configuration
Customize the logger with various configuration options:
- colorize: Toggles colorized logs. Default is
true. - level: Sets the logging level. Default is
info. - prettyPrint: Enables pretty printing of logs. Useful for development. Default is
true.
Example of Logged Requests
When an incoming request is processed, the Logger Library logs details such as the method, URL, and request parameters. For instance, a GET request to /api/user might be logged as:
[16:00:00.477] INFO (YourAppModule): Call Endpoint: GET /api/user Params: {}
Upon successful completion, it logs the request's finish time and the request ID:
[16:00:00.477] INFO (YourAppModule): Finished Endpoint: GET /api/user for 500ms ReqId: 12345
In case of an error, it logs the error message and stack trace:
[16:00:00.477] ERROR (YourAppModule): Failed Endpoint: GET /api/user Error - Resource not found.
Conclusion
Integrating the Logger Library into your NestJS project streamlines logging setup and provides robust, configurable logging solutions tailored to modern application needs.