mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-13 21:05:19 +00:00
fix(server): disable winston in seflhost instance (#9585)
This commit is contained in:
@@ -1,14 +1,14 @@
|
||||
import { Global, Module } from '@nestjs/common';
|
||||
|
||||
import { ConfigModule } from '../config';
|
||||
import { loggerProvider } from './service';
|
||||
import { AFFiNELogger } from './service';
|
||||
|
||||
@Global()
|
||||
@Module({
|
||||
imports: [ConfigModule],
|
||||
providers: [loggerProvider],
|
||||
exports: [loggerProvider],
|
||||
providers: [AFFiNELogger],
|
||||
exports: [AFFiNELogger],
|
||||
})
|
||||
export class LoggerModule {}
|
||||
|
||||
export { AFFiNELogger } from './logger';
|
||||
export { AFFiNELogger } from './service';
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
import { WinstonLogger } from 'nest-winston';
|
||||
|
||||
export class AFFiNELogger extends WinstonLogger {
|
||||
override error(
|
||||
message: any,
|
||||
trace?: Error | string | unknown,
|
||||
context?: string
|
||||
) {
|
||||
if (trace && trace instanceof Error) {
|
||||
super.error(message, trace.stack, context);
|
||||
} else if (typeof trace === 'string' || trace === undefined) {
|
||||
super.error(message, trace, context);
|
||||
} else {
|
||||
super.error(message, undefined, context);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,30 +1,6 @@
|
||||
import { LoggingWinston } from '@google-cloud/logging-winston';
|
||||
import { ConsoleLogger, LoggerService, Provider, Scope } from '@nestjs/common';
|
||||
import { createLogger, transports } from 'winston';
|
||||
import { ConsoleLogger, Injectable, Scope } from '@nestjs/common';
|
||||
|
||||
import { Config } from '../config';
|
||||
import { AFFiNELogger } from './logger';
|
||||
|
||||
export const loggerProvider: Provider<LoggerService> = {
|
||||
provide: AFFiNELogger,
|
||||
useFactory: (config: Config) => {
|
||||
if (config.NODE_ENV !== 'production') {
|
||||
return new ConsoleLogger();
|
||||
}
|
||||
const loggingWinston = new LoggingWinston();
|
||||
// Create a Winston logger that streams to Cloud Logging
|
||||
const instance = createLogger({
|
||||
level: config.affine.stable ? 'log' : 'verbose',
|
||||
transports: [
|
||||
new transports.Console(),
|
||||
// Add Cloud Logging
|
||||
loggingWinston,
|
||||
],
|
||||
});
|
||||
return new AFFiNELogger(instance);
|
||||
},
|
||||
inject: [Config],
|
||||
// use transient to make sure the logger is created for each di context
|
||||
// to make the `setContext` method works as expected
|
||||
@Injectable({
|
||||
scope: Scope.TRANSIENT,
|
||||
};
|
||||
})
|
||||
export class AFFiNELogger extends ConsoleLogger {}
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
import { FactoryProvider, Logger } from '@nestjs/common';
|
||||
import { FactoryProvider } from '@nestjs/common';
|
||||
import { createTransport, Transporter } from 'nodemailer';
|
||||
import SMTPTransport from 'nodemailer/lib/smtp-transport';
|
||||
|
||||
import { Config } from '../config';
|
||||
import { AFFiNELogger } from '../logger';
|
||||
|
||||
export const MAILER_SERVICE = Symbol('MAILER_SERVICE');
|
||||
|
||||
@@ -14,9 +15,9 @@ export const MAILER: FactoryProvider<
|
||||
Transporter<SMTPTransport.SentMessageInfo> | undefined
|
||||
> = {
|
||||
provide: MAILER_SERVICE,
|
||||
useFactory: (config: Config) => {
|
||||
useFactory: (config: Config, logger: AFFiNELogger) => {
|
||||
if (config.mailer) {
|
||||
const logger = new Logger('Mailer');
|
||||
logger.setContext('Mailer');
|
||||
const auth = config.mailer.auth;
|
||||
if (auth && auth.user && !('pass' in auth)) {
|
||||
logger.warn(
|
||||
@@ -29,5 +30,5 @@ export const MAILER: FactoryProvider<
|
||||
return undefined;
|
||||
}
|
||||
},
|
||||
inject: [Config],
|
||||
inject: [Config, AFFiNELogger],
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user