nestjs-fox-logger
v0.1.0
Published
Модуль логгера для Nestj.js
Readme
Installation
npm install --save nestjs-fox-logger nest-clsUsage
Import
// In your root module
import { ClsModule } from 'nestjs-cls';
@Module({
imports: [
ClsModule.forRoot({
middleware: {
mount: true,
generateId: true,
idGenerator: (req: Request) => req.headers['X-Request-Id'] ?? nanoid(),
},
global: true,
}),
],
})
export class AppModule {}/// ...in a feature module (with cls)
import { FoxLoggerModule } from 'nestjs-fox-logger';
@Module({
imports: [
FoxLoggerModule.forFeature({
name: 'SomeName',
}),
],
controllers: [],
providers: [],
exports: [],
})
export class SomeModule {}// ...in a feature module (with cls)
import { FoxLoggerModule } from 'nestjs-fox-logger';
@Module({
imports: [
FoxLoggerModule.forFeatureAsync({
useFactory: (cls: ClsService) => ({ name: 'SomeName', cls }),
inject: [ClsService],
}),
],
controllers: [],
providers: [],
exports: [],
})
export class SomeModule {}Call
Regular
import { LoopService } from 'nestjs-fox-logger';
@Injectable()
export class YourService {
constructor(private readonly logger: FoxLoggerService) {}
async foo() {
await this.logger.log('someMessage');
await this.logger.log('someMessage');
}
}With Event ID
import { LoopService } from 'nestjs-fox-logger';
@Injectable()
export class YourService {
constructor(private readonly logger: FoxLoggerService) {}
async foo() {
const eventId = nanoid();
await this.logger.log('someMessage', eventId);
}
}Author
Semen Kononets (GitHub)
LICENSE
MIT
