181 lines
7.3 KiB
TypeScript
181 lines
7.3 KiB
TypeScript
import { Module } from '@nestjs/common';
|
|
import { RabbitMQModule } from '@golevelup/nestjs-rabbitmq';
|
|
import { ConfigModule, ConfigService } from '@nestjs/config';
|
|
import { UserController } from './logger/adapters/primaries/user.controller';
|
|
import { WinstonModule } from 'nest-winston';
|
|
import * as winston from 'winston';
|
|
import { AuthController } from './logger/adapters/primaries/auth.controller';
|
|
import { ConfigurationController } from './logger/adapters/primaries/configuration.controller';
|
|
import { TerritoryController } from './logger/adapters/primaries/territory.controller';
|
|
import { GatewayApiController } from './logger/adapters/primaries/gateway-api.controller';
|
|
import { AdminApiController } from './logger/adapters/primaries/admin-api.controller';
|
|
|
|
@Module({
|
|
imports: [
|
|
RabbitMQModule.forRootAsync(RabbitMQModule, {
|
|
imports: [ConfigModule],
|
|
useFactory: async (configService: ConfigService) => ({
|
|
exchanges: [
|
|
{
|
|
name: configService.get<string>('RMQ_EXCHANGE'),
|
|
type: 'topic',
|
|
},
|
|
],
|
|
handlers: {
|
|
loggingGatewayApiHealthCrit: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.gateway-api.health.crit',
|
|
},
|
|
loggingAdminApiHealthCrit: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.admin-api.health.crit',
|
|
},
|
|
loggingAuthCreateCrit: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.auth.create.crit',
|
|
},
|
|
loggingAuthDeleteCrit: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.auth.delete.crit',
|
|
},
|
|
loggingAuthUsernameAddWarning: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.auth.username.add.warning',
|
|
},
|
|
loggingAuthUsernameDeleteWarning: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.auth.username.delete.warning',
|
|
},
|
|
loggingAuthPasswordUpdateWarning: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.auth.password.update.warning',
|
|
},
|
|
loggingAuthUsernameUpdateWarning: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.auth.username.update.warning',
|
|
},
|
|
loggingConfigurationCreateInfo: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.configuration.create.info',
|
|
},
|
|
loggingConfigurationCreateWarning: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.configuration.create.warning',
|
|
},
|
|
loggingConfigurationCreateCrit: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.configuration.create.crit',
|
|
},
|
|
loggingConfigurationDeleteInfo: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.configuration.delete.info',
|
|
},
|
|
loggingConfigurationDeleteCrit: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.configuration.delete.crit',
|
|
},
|
|
loggingConfigurationReadWarning: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.configuration.read.warning',
|
|
},
|
|
loggingConfigurationUpdateInfo: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.configuration.update.info',
|
|
},
|
|
loggingConfigurationUpdateCrit: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.configuration.update.crit',
|
|
},
|
|
loggingTerritoryCreateInfo: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.territory.create.info',
|
|
},
|
|
loggingTerritoryCreateWarning: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.territory.create.warning',
|
|
},
|
|
loggingTerritoryCreateCrit: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.territory.create.crit',
|
|
},
|
|
loggingTerritoryDeleteInfo: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.territory.delete.info',
|
|
},
|
|
loggingTerritoryDeleteCrit: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.territory.delete.crit',
|
|
},
|
|
loggingTerritoryReadWarning: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.territory.read.warning',
|
|
},
|
|
loggingTerritoryUpdateInfo: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.territory.update.info',
|
|
},
|
|
loggingTerritoryUpdateCrit: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.territory.update.crit',
|
|
},
|
|
loggingUserCreateInfo: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.user.create.info',
|
|
},
|
|
loggingUserCreateWarning: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.user.create.warning',
|
|
},
|
|
loggingUserCreateCrit: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.user.create.crit',
|
|
},
|
|
loggingUserDeleteInfo: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.user.delete.info',
|
|
},
|
|
loggingUserDeleteCrit: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.user.delete.crit',
|
|
},
|
|
loggingUserReadWarning: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.user.read.warning',
|
|
},
|
|
loggingUserUpdateInfo: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.user.update.info',
|
|
},
|
|
loggingUserUpdateCrit: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.user.update.crit',
|
|
},
|
|
loggingUserHealthCrit: {
|
|
exchange: configService.get<string>('RMQ_EXCHANGE'),
|
|
routingKey: 'logging.user.health.crit',
|
|
},
|
|
},
|
|
uri: configService.get<string>('RMQ_URI'),
|
|
connectionInitOptions: { wait: false },
|
|
enableControllerDiscovery: true,
|
|
}),
|
|
inject: [ConfigService],
|
|
}),
|
|
WinstonModule.forRoot({
|
|
levels: winston.config.syslog.levels,
|
|
transports: [],
|
|
}),
|
|
],
|
|
controllers: [
|
|
AuthController,
|
|
UserController,
|
|
ConfigurationController,
|
|
TerritoryController,
|
|
GatewayApiController,
|
|
AdminApiController,
|
|
],
|
|
providers: [],
|
|
exports: [],
|
|
})
|
|
export class LoggerModule {}
|