refactor(core): Make Logger a service (no-changelog) (#7494)

This commit is contained in:
कारतोफ्फेलस्क्रिप्ट™
2023-10-25 16:35:22 +02:00
committed by GitHub
parent db4e61ba24
commit 05586a900d
131 changed files with 761 additions and 919 deletions

View File

@@ -1,8 +1,9 @@
import type Redis from 'ioredis';
import type { Cluster } from 'ioredis';
import { getDefaultRedisClient } from './RedisServiceHelper';
import { LoggerProxy } from 'n8n-workflow';
import { Service } from 'typedi';
import config from '@/config';
import { Logger } from '@/Logger';
import { getDefaultRedisClient } from './RedisServiceHelper';
export type RedisClientType =
| 'subscriber'
@@ -22,11 +23,14 @@ export type RedisServiceMessageHandler =
| ((channel: string, message: string) => void)
| ((stream: string, id: string, message: string[]) => void);
@Service()
class RedisServiceBase {
redisClient: Redis | Cluster | undefined;
isInitialized = false;
constructor(protected readonly logger: Logger) {}
async init(type: RedisClientType = 'client'): Promise<void> {
if (this.redisClient && this.isInitialized) {
return;
@@ -34,13 +38,13 @@ class RedisServiceBase {
this.redisClient = await getDefaultRedisClient(undefined, type);
this.redisClient.on('close', () => {
LoggerProxy.warn('Redis unavailable - trying to reconnect...');
this.logger.warn('Redis unavailable - trying to reconnect...');
});
this.redisClient.on('error', (error) => {
if (!String(error).includes('ECONNREFUSED')) {
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
LoggerProxy.warn('Error with Redis: ', error);
this.logger.warn('Error with Redis: ', error);
}
});
}