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

@@ -6,7 +6,7 @@ import { SharedWorkflowRepository } from '@/databases/repositories';
import { WorkflowHistoryRepository } from '@db/repositories/workflowHistory.repository';
import { Service } from 'typedi';
import { isWorkflowHistoryEnabled } from './workflowHistoryHelper.ee';
import { getLogger } from '@/Logger';
import { Logger } from '@/Logger';
export class SharedWorkflowNotFoundError extends Error {}
export class HistoryVersionNotFoundError extends Error {}
@@ -14,6 +14,7 @@ export class HistoryVersionNotFoundError extends Error {}
@Service()
export class WorkflowHistoryService {
constructor(
private readonly logger: Logger,
private readonly workflowHistoryRepository: WorkflowHistoryRepository,
private readonly sharedWorkflowRepository: SharedWorkflowRepository,
) {}
@@ -76,7 +77,7 @@ export class WorkflowHistoryService {
workflowId,
});
} catch (e) {
getLogger().error(
this.logger.error(
`Failed to save workflow history version for workflow ${workflowId}`,
e as Error,
);

View File

@@ -11,7 +11,6 @@ import { isSharingEnabled, rightDiff } from '@/UserManagement/UserManagementHelp
import { EEWorkflowsService as EEWorkflows } from './workflows.services.ee';
import { ExternalHooks } from '@/ExternalHooks';
import { SharedWorkflow } from '@db/entities/SharedWorkflow';
import { LoggerProxy } from 'n8n-workflow';
import { CredentialsService } from '../credentials/credentials.service';
import type { IExecutionPushResponse } from '@/Interfaces';
import * as GenericHelpers from '@/GenericHelpers';
@@ -22,6 +21,7 @@ import { RoleService } from '@/services/role.service';
import * as utils from '@/utils';
import { listQueryMiddleware } from '@/middlewares';
import { TagService } from '@/services/tag.service';
import { Logger } from '@/Logger';
import { WorkflowHistoryService } from './workflowHistory/workflowHistory.service.ee';
// eslint-disable-next-line @typescript-eslint/naming-convention
@@ -181,7 +181,7 @@ EEWorkflowController.post(
});
if (!savedWorkflow) {
LoggerProxy.error('Failed to create workflow', { userId: req.user.id });
Container.get(Logger).error('Failed to create workflow', { userId: req.user.id });
throw new ResponseHelper.InternalServerError(
'An error occurred while saving your workflow. Please try again.',
);

View File

@@ -1,6 +1,5 @@
import express from 'express';
import { v4 as uuid } from 'uuid';
import { LoggerProxy } from 'n8n-workflow';
import axios from 'axios';
import * as Db from '@/Db';
@@ -13,7 +12,6 @@ import { SharedWorkflow } from '@db/entities/SharedWorkflow';
import { WorkflowEntity } from '@db/entities/WorkflowEntity';
import { validateEntity } from '@/GenericHelpers';
import { ExternalHooks } from '@/ExternalHooks';
import { getLogger } from '@/Logger';
import type { ListQuery, WorkflowRequest } from '@/requests';
import { isBelowOnboardingThreshold } from '@/WorkflowHelpers';
import { EEWorkflowController } from './workflows.controller.ee';
@@ -27,21 +25,9 @@ import * as utils from '@/utils';
import { listQueryMiddleware } from '@/middlewares';
import { TagService } from '@/services/tag.service';
import { WorkflowHistoryService } from './workflowHistory/workflowHistory.service.ee';
import { Logger } from '@/Logger';
export const workflowsController = express.Router();
/**
* Initialize Logger if needed
*/
workflowsController.use((req, res, next) => {
try {
LoggerProxy.getInstance();
} catch (error) {
LoggerProxy.init(getLogger());
}
next();
});
workflowsController.use('/', EEWorkflowController);
/**
@@ -96,7 +82,7 @@ workflowsController.post(
});
if (!savedWorkflow) {
LoggerProxy.error('Failed to create workflow', { userId: req.user.id });
Container.get(Logger).error('Failed to create workflow', { userId: req.user.id });
throw new ResponseHelper.InternalServerError('Failed to save workflow');
}
@@ -230,7 +216,7 @@ workflowsController.get(
});
if (!shared) {
LoggerProxy.verbose('User attempted to access a workflow without permissions', {
Container.get(Logger).verbose('User attempted to access a workflow without permissions', {
workflowId,
userId: req.user.id,
});
@@ -280,7 +266,7 @@ workflowsController.delete(
const workflow = await WorkflowsService.delete(req.user, workflowId);
if (!workflow) {
LoggerProxy.verbose('User attempted to delete a workflow without permissions', {
Container.get(Logger).verbose('User attempted to delete a workflow without permissions', {
workflowId,
userId: req.user.id,
});

View File

@@ -1,11 +1,6 @@
import { Container } from 'typedi';
import type { IDataObject, INode, IPinData } from 'n8n-workflow';
import {
NodeApiError,
ErrorReporterProxy as ErrorReporter,
LoggerProxy,
Workflow,
} from 'n8n-workflow';
import { NodeApiError, ErrorReporterProxy as ErrorReporter, Workflow } from 'n8n-workflow';
import type { FindManyOptions, FindOptionsSelect, FindOptionsWhere, UpdateResult } from 'typeorm';
import { In, Like } from 'typeorm';
import pick from 'lodash/pick';
@@ -35,6 +30,7 @@ import { OwnershipService } from '@/services/ownership.service';
import { isStringArray, isWorkflowIdValid } from '@/utils';
import { WorkflowHistoryService } from './workflowHistory/workflowHistory.service.ee';
import { BinaryDataService } from 'n8n-core';
import { Logger } from '@/Logger';
export class WorkflowsService {
static async getSharing(
@@ -200,8 +196,9 @@ export class WorkflowsService {
}),
});
const logger = Container.get(Logger);
if (!shared) {
LoggerProxy.verbose('User attempted to update a workflow without permissions', {
logger.verbose('User attempted to update a workflow without permissions', {
workflowId,
userId: user.id,
});
@@ -237,7 +234,7 @@ export class WorkflowsService {
} else {
// Update the workflow's version
workflow.versionId = uuid();
LoggerProxy.verbose(
logger.verbose(
`Updating versionId for workflow ${workflowId} for user ${user.id} after saving`,
{
previousVersionId: shared.workflow.versionId,
@@ -514,7 +511,7 @@ export class WorkflowsService {
workflow.staticData.__dataChanged = false;
} catch (error) {
ErrorReporter.error(error);
LoggerProxy.error(
Container.get(Logger).error(
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
`There was a problem saving the workflow with id "${workflow.id}" to save changed staticData: "${error.message}"`,
{ workflowId: workflow.id },