Comments (6)
I am using like this:
import {
MiddlewareConsumer,
Module,
NestModule,
RequestMethod,
} from '@nestjs/common';
import { CustomerModule } from './modules/customer/customer.module';
import { TypeOrmModule } from '@nestjs/typeorm';
import * as typeormConfig from './typeorm.config';
import { LoggerMiddleware } from './common/middlewares/logger.middleware';
import { SchedularModule } from './modules/schedular/schedular.module';
import { utilities, WinstonModule } from 'nest-winston';
import { format, transports } from 'winston';
import { TokenModule } from '@modules/token/token.module';
import { AuthMiddleWare } from '@common/middlewares/auth.middleware';
@Module({
imports: [
WinstonModule.forRoot({
format: format.combine(
format.timestamp({
format: 'YYYY-MM-DD HH:mm:ss',
}),
format.errors({ stack: true }),
format.splat(),
format.json(),
),
defaultMeta: { service: 'Orbis-employee' },
transports: [
new transports.File({
filename: 'logs/error.log',
level: 'error',
}),
new transports.File({
filename: 'logs/info.log',
level: 'info',
}),
new transports.Console({
format: format.combine(
format.timestamp(),
utilities.format.nestLike(),
),
}),
],
exceptionHandlers: [
new transports.File({
filename: 'logs/exceptions.log',
}),
],
}),
CustomerModule,
TypeOrmModule.forRoot(typeormConfig),
SchedularModule,
TokenModule,
],
controllers: [],
providers: [],
})
export class AppModule implements NestModule {
configure(consumer: MiddlewareConsumer) {
consumer
.apply(LoggerMiddleware)
.forRoutes({ path: '*', method: RequestMethod.ALL });
consumer.apply(AuthMiddleWare).forRoutes(
{ path: 'employee/', method: RequestMethod.GET },
{ path: 'employee/', method: RequestMethod.POST },
{ path: 'employee/:idx', method: RequestMethod.GET },
{ path: 'employee/:idx', method: RequestMethod.PUT },
{ path: 'employee/:idx', method: RequestMethod.DELETE },
{ path: 'employee/pending', method: RequestMethod.GET },
{ path: 'employee/pending/:idx', method: RequestMethod.GET },
{ path: 'employee/verify/:idx', method: RequestMethod.PUT },
{
path: 'employee/reset-device/:idx',
method: RequestMethod.PUT,
},
);
}
}
from nest-winston.
and in main.ts\
if (process.env.NODE_ENV === 'production') {
app.useLogger(app.get(WINSTON_MODULE_NEST_PROVIDER));
}
from nest-winston.
Well, there is too much code to debug or try to get a clue on which can cause that error. I would suggest to to remove all the modules/dependencies and only us the WinstonModule
. Try to setup a minimal example so I can reproduce the error, OK?
from nest-winston.
let me try to setup a minimal example
from nest-winston.
Fixed it. I was using Logger.log inside bootstrap after replacing it by console.log, the issue resolved
from nest-winston.
Glad to know! So, I'll close this isse.
from nest-winston.
Related Issues (20)
- Write after end node error with winston and nest-winston logger HOT 4
- TypeError: Cannot destructure property 'message' of 'message' as it is null
- Logging NestJS request details with every log? HOT 4
- "Unknown logger level" error when used for bootstraping HOT 3
- Nest can't resolve dependencies HOT 8
- Default context per service (configurable injection scope) HOT 3
- Passing winston logger instance to forRoot doesn't work HOT 2
- [Bug]: Creating multiple winston modules using child winston loggers use the last created winston module when using the nestjs Logger constructor HOT 2
- Adding "level" argument to log method HOT 2
- NestLike ConsoleFormat always contains stringifiedMeta and essentially logs message twice HOT 7
- LoggerService interface changed with Nest v8 HOT 2
- Is there a way to create a child logger? HOT 3
- How can I pass json attributes into the logger? HOT 3
- Support for @nestjs/common 10.0.0 in Peer Dependencies HOT 2
- [Question]: Should documentation be updated? HOT 8
- [Feature]: Support string-interpolation HOT 1
- [Question]: How to get trace_id ? HOT 4
- [Feature]: add fatal level HOT 6
- [Question]: How can I access a request scope injectable when replacing the Nest logger (including boostrap) ? HOT 2
- [Question]: Winston creates file but does not save to it
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nest-winston.