From fe6f5cdf8890da30eb1b009a5be198d87f45456c Mon Sep 17 00:00:00 2001 From: Pierre Lehnen <55164754+pierre-lehnen-rc@users.noreply.github.com> Date: Tue, 22 Aug 2023 15:14:17 -0300 Subject: [PATCH] chore: move logger to a separate package (#30092) --- _templates/package/new/package.json.ejs.t | 6 +- _templates/service/new/package.json.ejs.t | 16 +-- apps/meteor/app/api/server/api.ts | 2 +- apps/meteor/app/api/server/definition.ts | 2 +- apps/meteor/app/api/server/v1/voip/logger.ts | 2 +- .../server/lib/restrictLoginAttempts.ts | 2 +- .../app/autotranslate/server/autotranslate.ts | 2 +- .../meteor/app/autotranslate/server/logger.ts | 2 +- apps/meteor/app/cas/server/cas_rocketchat.js | 2 +- apps/meteor/app/cors/server/cors.ts | 2 +- apps/meteor/app/crowd/server/logger.ts | 2 +- .../server/custom_oauth_server.js | 2 +- .../app/federation/server/lib/logger.js | 2 +- .../app/file-upload/server/config/GridFS.ts | 2 +- .../app/file-upload/server/lib/proxy.ts | 2 +- .../server/classes/ImportDataConverter.ts | 2 +- .../importer/server/classes/ImporterBase.js | 2 +- apps/meteor/app/integrations/server/logger.ts | 2 +- .../meteor/app/irc/server/irc-bridge/index.js | 2 +- .../app/irc/server/servers/RFC2813/index.js | 3 +- .../lib/server/functions/getFullUserData.ts | 2 +- apps/meteor/app/lib/server/lib/bugsnag.ts | 2 +- apps/meteor/app/lib/server/lib/debug.js | 2 +- .../server/lib/deprecationWarningLogger.ts | 2 +- .../lib/server/startup/oAuthServicesUpdate.js | 2 +- .../app/lib/server/startup/rateLimiter.js | 2 +- .../app/livechat/server/lib/Analytics.js | 2 +- .../app/livechat/server/lib/Departments.ts | 2 +- apps/meteor/app/livechat/server/lib/Helper.ts | 2 +- .../app/livechat/server/lib/Livechat.js | 2 +- .../app/livechat/server/lib/LivechatTyped.ts | 3 +- .../app/livechat/server/lib/QueueManager.ts | 2 +- .../app/livechat/server/lib/RoutingManager.ts | 2 +- apps/meteor/app/livechat/server/lib/logger.ts | 2 +- .../livechat/server/lib/stream/agentStatus.ts | 3 +- apps/meteor/app/logger/server/index.ts | 2 - .../message-mark-as-unread/server/logger.ts | 2 +- .../meteor-accounts-saml/server/lib/Utils.ts | 3 +- .../meteor-accounts-saml/server/startup.ts | 2 +- apps/meteor/app/oembed/server/server.ts | 2 +- apps/meteor/app/push/server/logger.ts | 2 +- .../meteor/app/search/server/logger/logger.ts | 2 +- apps/meteor/app/slackbridge/server/logger.ts | 2 +- .../app/statistics/server/lib/SAUMonitor.ts | 2 +- .../app/utils/lib/templateVarHandler.ts | 2 +- .../meteor/app/version-check/server/logger.ts | 2 +- .../server/methods/uploadFileToWebdav.ts | 2 +- .../server/lib/AutoCloseOnHoldScheduler.ts | 2 +- .../server/lib/AutoTransferChatScheduler.ts | 2 +- .../server/lib/QueueInactivityMonitor.ts | 2 +- .../server/lib/VisitorInactivityMonitor.ts | 2 +- .../livechat-enterprise/server/lib/logger.ts | 2 +- .../services/omnichannel.internalService.ts | 2 +- .../server/apps/marketplace/appEnableCheck.ts | 2 +- apps/meteor/ee/server/apps/orchestrator.js | 2 +- apps/meteor/ee/server/configuration/oauth.ts | 2 +- .../lib/ldap/copyCustomFieldsLDAP.spec.ts | 2 +- .../server/lib/ldap/copyCustomFieldsLDAP.ts | 2 +- apps/meteor/ee/server/lib/oauth/Manager.ts | 2 +- apps/meteor/ee/server/services/package.json | 2 +- apps/meteor/lib/callbacks/callbacksBase.ts | 2 +- apps/meteor/package.json | 3 +- apps/meteor/server/cron/statistics.ts | 2 +- .../meteor/server/database/DatabaseWatcher.ts | 2 +- .../server/features/EmailInbox/logger.ts | 2 +- apps/meteor/server/importPackages.ts | 1 - apps/meteor/server/lib/ldap/DataConverter.ts | 2 +- apps/meteor/server/lib/ldap/Logger.ts | 2 +- apps/meteor/server/lib/logger/startup.ts | 5 +- apps/meteor/server/lib/logger/system.ts | 2 +- apps/meteor/server/lib/migrations.ts | 2 +- apps/meteor/server/lib/settingsRegenerator.ts | 3 +- apps/meteor/server/models/raw/VoipRoom.ts | 2 +- .../server/services/calendar/service.ts | 2 +- .../rocket-chat/adapters/logger.ts | 2 +- .../services/omnichannel-voip/service.ts | 2 +- apps/meteor/server/services/startup.ts | 2 +- .../voip/connector/asterisk/CommandHandler.ts | 2 +- .../voip/connector/asterisk/ami/ACDQueue.ts | 2 +- .../connector/asterisk/ami/AMIConnection.ts | 2 +- .../connector/asterisk/ami/CommandFactory.ts | 2 +- .../asterisk/ami/ContinuousMonitor.ts | 2 +- .../connector/asterisk/ami/PJSIPEndpoint.ts | 2 +- .../websocket/WebsocketConnection.ts | 2 +- apps/meteor/server/services/voip/service.ts | 2 +- apps/meteor/server/startup/callbacks.ts | 2 +- apps/meteor/server/startup/cron.ts | 2 +- apps/meteor/server/startup/watchDb.ts | 2 +- apps/meteor/server/stream/stdout.ts | 2 +- ee/apps/account-service/package.json | 2 +- ee/apps/authorization-service/package.json | 2 +- ee/apps/ddp-streamer/Dockerfile | 3 + ee/apps/ddp-streamer/package.json | 3 +- ee/apps/ddp-streamer/src/Server.ts | 2 +- ee/apps/omnichannel-transcript/Dockerfile | 3 + ee/apps/omnichannel-transcript/package.json | 3 +- ee/apps/omnichannel-transcript/src/service.ts | 2 +- ee/apps/presence-service/package.json | 2 +- ee/apps/queue-worker/Dockerfile | 3 + ee/apps/queue-worker/package.json | 3 +- ee/apps/queue-worker/src/service.ts | 2 +- ee/apps/stream-hub-service/Dockerfile | 3 + ee/apps/stream-hub-service/package.json | 3 +- ee/apps/stream-hub-service/src/StreamHub.ts | 2 +- ee/apps/stream-hub-service/src/service.ts | 2 +- ee/packages/omnichannel-services/package.json | 7 +- .../src/OmnichannelTranscript.ts | 3 +- .../omnichannel-services/src/QueueWorker.ts | 3 +- .../omnichannel-services/tsconfig.json | 1 + packages/logger/.eslintrc.json | 4 + packages/logger/package.json | 28 +++++ .../logger => packages/logger/src}/getPino.ts | 0 .../Logger.ts => packages/logger/src/index.ts | 13 ++- .../logger/src}/logLevel.ts | 0 .../logger/src}/logQueue.ts | 0 packages/logger/tsconfig.json | 9 ++ yarn.lock | 107 +++++++----------- 117 files changed, 223 insertions(+), 196 deletions(-) delete mode 100644 apps/meteor/app/logger/server/index.ts create mode 100644 packages/logger/.eslintrc.json create mode 100644 packages/logger/package.json rename {apps/meteor/server/lib/logger => packages/logger/src}/getPino.ts (100%) rename apps/meteor/server/lib/logger/Logger.ts => packages/logger/src/index.ts (89%) rename {apps/meteor/server/lib/logger => packages/logger/src}/logLevel.ts (100%) rename {apps/meteor/server/lib/logger => packages/logger/src}/logQueue.ts (100%) create mode 100644 packages/logger/tsconfig.json diff --git a/_templates/package/new/package.json.ejs.t b/_templates/package/new/package.json.ejs.t index 1239ec82134..950e5cb2bf6 100644 --- a/_templates/package/new/package.json.ejs.t +++ b/_templates/package/new/package.json.ejs.t @@ -7,11 +7,11 @@ to: packages/<%= name %>/package.json "version": "0.0.1", "private": true, "devDependencies": { - "@types/jest": "^27.4.1", + "@types/jest": "~29.5.3", "eslint": "~8.45.0", - "jest": "~29.5.0", + "jest": "~29.6.1", "ts-jest": "~29.0.5", - "typescript": "~5.0.2" + "typescript": "~5.1.6" }, "scripts": { "lint": "eslint --ext .js,.jsx,.ts,.tsx .", diff --git a/_templates/service/new/package.json.ejs.t b/_templates/service/new/package.json.ejs.t index ca4724de539..2c74278d1ce 100644 --- a/_templates/service/new/package.json.ejs.t +++ b/_templates/service/new/package.json.ejs.t @@ -20,29 +20,29 @@ to: ee/apps/<%= name %>/package.json "dependencies": { "@rocket.chat/core-services": "workspace:^", "@rocket.chat/core-typings": "workspace:^", - "@rocket.chat/emitter": "0.31.22", + "@rocket.chat/emitter": "next", "@rocket.chat/model-typings": "workspace:^", "@rocket.chat/models": "workspace:^", "@rocket.chat/rest-typings": "workspace:^", - "@rocket.chat/string-helpers": "0.31.22", - "@types/node": "^14.18.21", - "ejson": "^2.2.2", + "@rocket.chat/string-helpers": "next", + "@types/node": "^14.18.51", + "ejson": "^2.2.3", "eventemitter3": "^4.0.7", "fibers": "^5.0.3", "mem": "^8.1.1", - "moleculer": "^0.14.21", + "moleculer": "^0.14.29", "mongodb": "^4.12.1", "nats": "^2.4.0", - "pino": "^8.4.2", + "pino": "^8.15.0", "polka": "^0.5.2" }, "devDependencies": { "@rocket.chat/eslint-config": "workspace:^", - "@types/eslint": "^8.4.10", + "@types/eslint": "~8.44.0", "@types/polka": "^0.5.4", "eslint": "~8.45.0", "ts-node": "^10.9.1", - "typescript": "~4.6.4" + "typescript": "~5.1.6" }, "main": "./dist/ee/apps/<%= name %>/src/service.js", "files": [ diff --git a/apps/meteor/app/api/server/api.ts b/apps/meteor/app/api/server/api.ts index 5d9b653d340..d4e8377a4dd 100644 --- a/apps/meteor/app/api/server/api.ts +++ b/apps/meteor/app/api/server/api.ts @@ -1,4 +1,5 @@ import type { IMethodConnection, IUser, IRoom } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import { Users } from '@rocket.chat/models'; import { Random } from '@rocket.chat/random'; import type { JoinPathPattern, Method } from '@rocket.chat/rest-typings'; @@ -17,7 +18,6 @@ import { getRestPayload } from '../../../server/lib/logger/logPayloads'; import { checkCodeForUser } from '../../2fa/server/code'; import { hasPermissionAsync } from '../../authorization/server/functions/hasPermission'; import { apiDeprecationLogger } from '../../lib/server/lib/deprecationWarningLogger'; -import { Logger } from '../../logger/server'; import { metrics } from '../../metrics/server'; import { settings } from '../../settings/server'; import { getDefaultUserFields } from '../../utils/server/functions/getDefaultUserFields'; diff --git a/apps/meteor/app/api/server/definition.ts b/apps/meteor/app/api/server/definition.ts index cce6d38c555..d2fa248530f 100644 --- a/apps/meteor/app/api/server/definition.ts +++ b/apps/meteor/app/api/server/definition.ts @@ -1,10 +1,10 @@ import type { IUser } from '@rocket.chat/core-typings'; +import type { Logger } from '@rocket.chat/logger'; import type { Method, MethodOf, OperationParams, OperationResult, PathPattern, UrlParams } from '@rocket.chat/rest-typings'; import type { ValidateFunction } from 'ajv'; import type { Request, Response } from 'express'; import type { ITwoFactorOptions } from '../../2fa/server/code'; -import type { Logger } from '../../logger/server'; export type SuccessResult = { statusCode: 200; diff --git a/apps/meteor/app/api/server/v1/voip/logger.ts b/apps/meteor/app/api/server/v1/voip/logger.ts index 792cf79427e..fffa6807848 100644 --- a/apps/meteor/app/api/server/v1/voip/logger.ts +++ b/apps/meteor/app/api/server/v1/voip/logger.ts @@ -1,3 +1,3 @@ -import { Logger } from '../../../../logger/server'; +import { Logger } from '@rocket.chat/logger'; export const logger = new Logger('VoIP'); diff --git a/apps/meteor/app/authentication/server/lib/restrictLoginAttempts.ts b/apps/meteor/app/authentication/server/lib/restrictLoginAttempts.ts index 1f70085f3c7..3b6cd6c8940 100644 --- a/apps/meteor/app/authentication/server/lib/restrictLoginAttempts.ts +++ b/apps/meteor/app/authentication/server/lib/restrictLoginAttempts.ts @@ -1,11 +1,11 @@ import type { IServerEvent } from '@rocket.chat/core-typings'; import { ServerEventType } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import { Rooms, ServerEvents, Users } from '@rocket.chat/models'; import { addMinutesToADate } from '../../../../lib/utils/addMinutesToADate'; import { getClientAddress } from '../../../../server/lib/getClientAddress'; import { sendMessage } from '../../../lib/server/functions/sendMessage'; -import { Logger } from '../../../logger/server'; import { settings } from '../../../settings/server'; import type { ILoginAttempt } from '../ILoginAttempt'; diff --git a/apps/meteor/app/autotranslate/server/autotranslate.ts b/apps/meteor/app/autotranslate/server/autotranslate.ts index 8acef65b167..076c7c52818 100644 --- a/apps/meteor/app/autotranslate/server/autotranslate.ts +++ b/apps/meteor/app/autotranslate/server/autotranslate.ts @@ -7,6 +7,7 @@ import type { ISupportedLanguage, ITranslationResult, } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import { Messages, Subscriptions } from '@rocket.chat/models'; import { escapeHTML } from '@rocket.chat/string-helpers'; import { Meteor } from 'meteor/meteor'; @@ -14,7 +15,6 @@ import _ from 'underscore'; import { callbacks } from '../../../lib/callbacks'; import { isTruthy } from '../../../lib/isTruthy'; -import { Logger } from '../../logger/server'; import { Markdown } from '../../markdown/server'; import { settings } from '../../settings/server'; diff --git a/apps/meteor/app/autotranslate/server/logger.ts b/apps/meteor/app/autotranslate/server/logger.ts index 70ca0cbf97b..9fbd129acd7 100644 --- a/apps/meteor/app/autotranslate/server/logger.ts +++ b/apps/meteor/app/autotranslate/server/logger.ts @@ -1,4 +1,4 @@ -import { Logger } from '../../logger/server'; +import { Logger } from '@rocket.chat/logger'; const logger = new Logger('AutoTranslate'); diff --git a/apps/meteor/app/cas/server/cas_rocketchat.js b/apps/meteor/app/cas/server/cas_rocketchat.js index 08e0c567904..f0b62b6ccb8 100644 --- a/apps/meteor/app/cas/server/cas_rocketchat.js +++ b/apps/meteor/app/cas/server/cas_rocketchat.js @@ -1,6 +1,6 @@ +import { Logger } from '@rocket.chat/logger'; import { ServiceConfiguration } from 'meteor/service-configuration'; -import { Logger } from '../../logger/server'; import { settings } from '../../settings/server'; export const logger = new Logger('CAS'); diff --git a/apps/meteor/app/cors/server/cors.ts b/apps/meteor/app/cors/server/cors.ts index 29b08261cc4..69a0b557ee6 100644 --- a/apps/meteor/app/cors/server/cors.ts +++ b/apps/meteor/app/cors/server/cors.ts @@ -1,12 +1,12 @@ import type http from 'http'; import url from 'url'; +import { Logger } from '@rocket.chat/logger'; import { Meteor } from 'meteor/meteor'; import type { StaticFiles } from 'meteor/webapp'; import { WebApp, WebAppInternals } from 'meteor/webapp'; import _ from 'underscore'; -import { Logger } from '../../logger/server'; import { settings } from '../../settings/server'; // Taken from 'connect' types diff --git a/apps/meteor/app/crowd/server/logger.ts b/apps/meteor/app/crowd/server/logger.ts index 6dfa29c4095..b241746e294 100644 --- a/apps/meteor/app/crowd/server/logger.ts +++ b/apps/meteor/app/crowd/server/logger.ts @@ -1,3 +1,3 @@ -import { Logger } from '../../logger/server'; +import { Logger } from '@rocket.chat/logger'; export const logger = new Logger('CROWD'); diff --git a/apps/meteor/app/custom-oauth/server/custom_oauth_server.js b/apps/meteor/app/custom-oauth/server/custom_oauth_server.js index a00e8ecc9d0..bb939febaef 100644 --- a/apps/meteor/app/custom-oauth/server/custom_oauth_server.js +++ b/apps/meteor/app/custom-oauth/server/custom_oauth_server.js @@ -1,4 +1,5 @@ import { LDAP } from '@rocket.chat/core-services'; +import { Logger } from '@rocket.chat/logger'; import { Users } from '@rocket.chat/models'; import { serverFetch as fetch } from '@rocket.chat/server-fetch'; import { Accounts } from 'meteor/accounts-base'; @@ -11,7 +12,6 @@ import _ from 'underscore'; import { callbacks } from '../../../lib/callbacks'; import { isURL } from '../../../lib/utils/isURL'; import { registerAccessTokenService } from '../../lib/server/oauth/oauth'; -import { Logger } from '../../logger/server'; import { settings } from '../../settings/server'; import { normalizers, fromTemplate, renameInvalidProperties } from './transform_helpers'; diff --git a/apps/meteor/app/federation/server/lib/logger.js b/apps/meteor/app/federation/server/lib/logger.js index 9e66d33808b..e8cf0ae1284 100644 --- a/apps/meteor/app/federation/server/lib/logger.js +++ b/apps/meteor/app/federation/server/lib/logger.js @@ -1,4 +1,4 @@ -import { Logger } from '../../../logger/server'; +import { Logger } from '@rocket.chat/logger'; const logger = new Logger('Federation'); diff --git a/apps/meteor/app/file-upload/server/config/GridFS.ts b/apps/meteor/app/file-upload/server/config/GridFS.ts index 44f4066ac9f..629d177581b 100644 --- a/apps/meteor/app/file-upload/server/config/GridFS.ts +++ b/apps/meteor/app/file-upload/server/config/GridFS.ts @@ -4,9 +4,9 @@ import stream from 'stream'; import zlib from 'zlib'; import type { IUpload } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import { UploadFS } from '../../../../server/ufs'; -import { Logger } from '../../../logger/server'; import { FileUploadClass, FileUpload } from '../lib/FileUpload'; import { getFileRange, setRangeHeaders } from '../lib/ranges'; diff --git a/apps/meteor/app/file-upload/server/lib/proxy.ts b/apps/meteor/app/file-upload/server/lib/proxy.ts index 64616693a4d..048424af4bd 100644 --- a/apps/meteor/app/file-upload/server/lib/proxy.ts +++ b/apps/meteor/app/file-upload/server/lib/proxy.ts @@ -2,13 +2,13 @@ import http from 'http'; import URL from 'url'; import { InstanceStatus } from '@rocket.chat/instance-status'; +import { Logger } from '@rocket.chat/logger'; import { InstanceStatus as InstanceStatusModel } from '@rocket.chat/models'; import type { NextFunction } from 'connect'; import type createServer from 'connect'; import { WebApp } from 'meteor/webapp'; import { UploadFS } from '../../../../server/ufs'; -import { Logger } from '../../../logger/server'; import { isDocker } from '../../../utils/server/functions/isDocker'; const logger = new Logger('UploadProxy'); diff --git a/apps/meteor/app/importer/server/classes/ImportDataConverter.ts b/apps/meteor/app/importer/server/classes/ImportDataConverter.ts index f8a749455e0..dea6bbb845d 100644 --- a/apps/meteor/app/importer/server/classes/ImportDataConverter.ts +++ b/apps/meteor/app/importer/server/classes/ImportDataConverter.ts @@ -12,6 +12,7 @@ import type { IImportRecordType, IMessage as IDBMessage, } from '@rocket.chat/core-typings'; +import type { Logger } from '@rocket.chat/logger'; import { ImportData, Rooms, Users, Subscriptions } from '@rocket.chat/models'; import { Random } from '@rocket.chat/random'; import { SHA256 } from '@rocket.chat/sha256'; @@ -20,7 +21,6 @@ import { Accounts } from 'meteor/accounts-base'; import { ObjectId } from 'mongodb'; import { callbacks } from '../../../../lib/callbacks'; -import type { Logger } from '../../../../server/lib/logger/Logger'; import { createDirectMessage } from '../../../../server/methods/createDirectMessage'; import { saveRoomSettings } from '../../../channel-settings/server/methods/saveRoomSettings'; import { addUserToDefaultChannels } from '../../../lib/server/functions/addUserToDefaultChannels'; diff --git a/apps/meteor/app/importer/server/classes/ImporterBase.js b/apps/meteor/app/importer/server/classes/ImporterBase.js index ef971c90397..47b5c91cd3d 100644 --- a/apps/meteor/app/importer/server/classes/ImporterBase.js +++ b/apps/meteor/app/importer/server/classes/ImporterBase.js @@ -1,8 +1,8 @@ +import { Logger } from '@rocket.chat/logger'; import { Settings, ImportData, Imports } from '@rocket.chat/models'; import AdmZip from 'adm-zip'; import { Selection, SelectionChannel, SelectionUser } from '..'; -import { Logger } from '../../../logger/server'; import { t } from '../../../utils/lib/i18n'; import { ImporterInfo } from '../../lib/ImporterInfo'; import { ProgressStep, ImportPreparingStartedStates } from '../../lib/ImporterProgressStep'; diff --git a/apps/meteor/app/integrations/server/logger.ts b/apps/meteor/app/integrations/server/logger.ts index a1b90ea8c10..47da6bcf22c 100644 --- a/apps/meteor/app/integrations/server/logger.ts +++ b/apps/meteor/app/integrations/server/logger.ts @@ -1,4 +1,4 @@ -import { Logger } from '../../logger/server'; +import { Logger } from '@rocket.chat/logger'; const logger = new Logger('Integrations'); diff --git a/apps/meteor/app/irc/server/irc-bridge/index.js b/apps/meteor/app/irc/server/irc-bridge/index.js index 07ede8c6a2e..9ab6c47987d 100644 --- a/apps/meteor/app/irc/server/irc-bridge/index.js +++ b/apps/meteor/app/irc/server/irc-bridge/index.js @@ -1,3 +1,4 @@ +import { Logger } from '@rocket.chat/logger'; import { Settings } from '@rocket.chat/models'; import moment from 'moment'; import Queue from 'queue-fifo'; @@ -6,7 +7,6 @@ import { callbacks } from '../../../../lib/callbacks'; import { afterLeaveRoomCallback } from '../../../../lib/callbacks/afterLeaveRoomCallback'; import { afterLogoutCleanUpCallback } from '../../../../lib/callbacks/afterLogoutCleanUpCallback'; import { withThrottling } from '../../../../lib/utils/highOrderFunctions'; -import { Logger } from '../../../logger/server'; import * as servers from '../servers'; import * as localCommandHandlers from './localHandlers'; import * as peerCommandHandlers from './peerHandlers'; diff --git a/apps/meteor/app/irc/server/servers/RFC2813/index.js b/apps/meteor/app/irc/server/servers/RFC2813/index.js index 7e9fe74a8c2..8c5b8abf19c 100644 --- a/apps/meteor/app/irc/server/servers/RFC2813/index.js +++ b/apps/meteor/app/irc/server/servers/RFC2813/index.js @@ -2,7 +2,8 @@ import { EventEmitter } from 'events'; import net from 'net'; import util from 'util'; -import { Logger } from '../../../../logger/server'; +import { Logger } from '@rocket.chat/logger'; + import localCommandHandlers from './localCommandHandlers'; import parseMessage from './parseMessage'; import peerCommandHandlers from './peerCommandHandlers'; diff --git a/apps/meteor/app/lib/server/functions/getFullUserData.ts b/apps/meteor/app/lib/server/functions/getFullUserData.ts index 725514f3bc9..c04148c07ba 100644 --- a/apps/meteor/app/lib/server/functions/getFullUserData.ts +++ b/apps/meteor/app/lib/server/functions/getFullUserData.ts @@ -1,8 +1,8 @@ import type { IUser } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import { Users } from '@rocket.chat/models'; import { hasPermissionAsync } from '../../../authorization/server/functions/hasPermission'; -import { Logger } from '../../../logger/server'; import { settings } from '../../../settings/server'; const logger = new Logger('getFullUserData'); diff --git a/apps/meteor/app/lib/server/lib/bugsnag.ts b/apps/meteor/app/lib/server/lib/bugsnag.ts index 3c00f894e33..25dbfe0fdc0 100644 --- a/apps/meteor/app/lib/server/lib/bugsnag.ts +++ b/apps/meteor/app/lib/server/lib/bugsnag.ts @@ -1,7 +1,7 @@ import Bugsnag from '@bugsnag/js'; +import { Logger } from '@rocket.chat/logger'; import { Meteor } from 'meteor/meteor'; -import { Logger } from '../../../logger/server'; import { settings } from '../../../settings/server'; import { Info } from '../../../utils/rocketchat.info'; diff --git a/apps/meteor/app/lib/server/lib/debug.js b/apps/meteor/app/lib/server/lib/debug.js index e7f634d3d2a..aaa492e8033 100644 --- a/apps/meteor/app/lib/server/lib/debug.js +++ b/apps/meteor/app/lib/server/lib/debug.js @@ -1,9 +1,9 @@ import { InstanceStatus } from '@rocket.chat/instance-status'; +import { Logger } from '@rocket.chat/logger'; import { Meteor } from 'meteor/meteor'; import { WebApp } from 'meteor/webapp'; import _ from 'underscore'; -import { Logger } from '../../../../server/lib/logger/Logger'; import { getMethodArgs } from '../../../../server/lib/logger/logPayloads'; import { metrics } from '../../../metrics/server'; import { settings } from '../../../settings/server'; diff --git a/apps/meteor/app/lib/server/lib/deprecationWarningLogger.ts b/apps/meteor/app/lib/server/lib/deprecationWarningLogger.ts index a13bb7b59bf..6ca8e3edfbb 100644 --- a/apps/meteor/app/lib/server/lib/deprecationWarningLogger.ts +++ b/apps/meteor/app/lib/server/lib/deprecationWarningLogger.ts @@ -1,7 +1,7 @@ +import { Logger } from '@rocket.chat/logger'; import type { Response } from 'meteor/rocketchat:restivus'; import semver from 'semver'; -import { Logger } from '../../../logger/server'; import { metrics } from '../../../metrics/server'; const deprecationLogger = new Logger('DeprecationWarning'); diff --git a/apps/meteor/app/lib/server/startup/oAuthServicesUpdate.js b/apps/meteor/app/lib/server/startup/oAuthServicesUpdate.js index 8f991d2e742..397c3a491c5 100644 --- a/apps/meteor/app/lib/server/startup/oAuthServicesUpdate.js +++ b/apps/meteor/app/lib/server/startup/oAuthServicesUpdate.js @@ -1,8 +1,8 @@ +import { Logger } from '@rocket.chat/logger'; import { ServiceConfiguration } from 'meteor/service-configuration'; import _ from 'underscore'; import { CustomOAuth } from '../../../custom-oauth/server/custom_oauth_server'; -import { Logger } from '../../../logger/server'; import { settings } from '../../../settings/server'; import { addOAuthService } from '../functions/addOAuthService'; diff --git a/apps/meteor/app/lib/server/startup/rateLimiter.js b/apps/meteor/app/lib/server/startup/rateLimiter.js index 55fab3aef31..a1ddfe87886 100644 --- a/apps/meteor/app/lib/server/startup/rateLimiter.js +++ b/apps/meteor/app/lib/server/startup/rateLimiter.js @@ -1,10 +1,10 @@ +import { Logger } from '@rocket.chat/logger'; import { DDPRateLimiter } from 'meteor/ddp-rate-limiter'; import { Meteor } from 'meteor/meteor'; import { RateLimiter } from 'meteor/rate-limit'; import _ from 'underscore'; import { sleep } from '../../../../lib/utils/sleep'; -import { Logger } from '../../../logger/server'; import { metrics } from '../../../metrics/server'; import { settings } from '../../../settings/server'; diff --git a/apps/meteor/app/livechat/server/lib/Analytics.js b/apps/meteor/app/livechat/server/lib/Analytics.js index 0ae201dbc25..5f6e3469501 100644 --- a/apps/meteor/app/livechat/server/lib/Analytics.js +++ b/apps/meteor/app/livechat/server/lib/Analytics.js @@ -1,10 +1,10 @@ +import { Logger } from '@rocket.chat/logger'; import { LivechatRooms } from '@rocket.chat/models'; import moment from 'moment-timezone'; import { callbacks } from '../../../../lib/callbacks'; import { secondsToHHMMSS } from '../../../../lib/utils/secondsToHHMMSS'; import { i18n } from '../../../../server/lib/i18n'; -import { Logger } from '../../../logger/server'; import { getTimezone } from '../../../utils/server/lib/getTimezone'; const HOURS_IN_DAY = 24; diff --git a/apps/meteor/app/livechat/server/lib/Departments.ts b/apps/meteor/app/livechat/server/lib/Departments.ts index 349af6bd227..9743b1b65d3 100644 --- a/apps/meteor/app/livechat/server/lib/Departments.ts +++ b/apps/meteor/app/livechat/server/lib/Departments.ts @@ -1,7 +1,7 @@ +import { Logger } from '@rocket.chat/logger'; import { LivechatDepartment, LivechatDepartmentAgents, LivechatRooms } from '@rocket.chat/models'; import { callbacks } from '../../../../lib/callbacks'; -import { Logger } from '../../../logger/server'; class DepartmentHelperClass { logger = new Logger('Omnichannel:DepartmentHelper'); diff --git a/apps/meteor/app/livechat/server/lib/Helper.ts b/apps/meteor/app/livechat/server/lib/Helper.ts index e64db254052..5ce04d806b9 100644 --- a/apps/meteor/app/livechat/server/lib/Helper.ts +++ b/apps/meteor/app/livechat/server/lib/Helper.ts @@ -15,6 +15,7 @@ import type { } from '@rocket.chat/core-typings'; import { LivechatInquiryStatus, OmnichannelSourceType, DEFAULT_SLA_CONFIG, UserStatus } from '@rocket.chat/core-typings'; import { LivechatPriorityWeight } from '@rocket.chat/core-typings/src/ILivechatPriority'; +import { Logger } from '@rocket.chat/logger'; import type { InsertionModel } from '@rocket.chat/model-typings'; import { LivechatDepartmentAgents, @@ -35,7 +36,6 @@ import { i18n } from '../../../../server/lib/i18n'; import { hasRoleAsync } from '../../../authorization/server/functions/hasRole'; import { sendNotification } from '../../../lib/server'; import { sendMessage } from '../../../lib/server/functions/sendMessage'; -import { Logger } from '../../../logger/server'; import { settings } from '../../../settings/server'; import { Livechat } from './Livechat'; import { Livechat as LivechatTyped } from './LivechatTyped'; diff --git a/apps/meteor/app/livechat/server/lib/Livechat.js b/apps/meteor/app/livechat/server/lib/Livechat.js index 6bd482aad6c..e389baf3ec4 100644 --- a/apps/meteor/app/livechat/server/lib/Livechat.js +++ b/apps/meteor/app/livechat/server/lib/Livechat.js @@ -5,6 +5,7 @@ import dns from 'dns'; import util from 'util'; import { Message, VideoConf, api } from '@rocket.chat/core-services'; +import { Logger } from '@rocket.chat/logger'; import { LivechatVisitors, LivechatCustomField, @@ -34,7 +35,6 @@ import { FileUpload } from '../../../file-upload/server'; import { deleteMessage } from '../../../lib/server/functions/deleteMessage'; import { sendMessage } from '../../../lib/server/functions/sendMessage'; import { updateMessage } from '../../../lib/server/functions/updateMessage'; -import { Logger } from '../../../logger/server'; import * as Mailer from '../../../mailer/server/api'; import { settings } from '../../../settings/server'; import { businessHourManager } from '../business-hour'; diff --git a/apps/meteor/app/livechat/server/lib/LivechatTyped.ts b/apps/meteor/app/livechat/server/lib/LivechatTyped.ts index ec0f188e66e..3afe528a400 100644 --- a/apps/meteor/app/livechat/server/lib/LivechatTyped.ts +++ b/apps/meteor/app/livechat/server/lib/LivechatTyped.ts @@ -11,6 +11,7 @@ import type { IMessage, } from '@rocket.chat/core-typings'; import { UserStatus, isOmnichannelRoom } from '@rocket.chat/core-typings'; +import { Logger, type MainLogger } from '@rocket.chat/logger'; import { LivechatDepartment, LivechatInquiry, @@ -29,10 +30,8 @@ import type { FindCursor, UpdateFilter } from 'mongodb'; import { Apps, AppEvents } from '../../../../ee/server/apps'; import { callbacks } from '../../../../lib/callbacks'; import { i18n } from '../../../../server/lib/i18n'; -import type { MainLogger } from '../../../../server/lib/logger/getPino'; import { hasRoleAsync } from '../../../authorization/server/functions/hasRole'; import { sendMessage } from '../../../lib/server/functions/sendMessage'; -import { Logger } from '../../../logger/server'; import * as Mailer from '../../../mailer/server/api'; import { metrics } from '../../../metrics/server'; import { settings } from '../../../settings/server'; diff --git a/apps/meteor/app/livechat/server/lib/QueueManager.ts b/apps/meteor/app/livechat/server/lib/QueueManager.ts index ce5afaef386..597f38b71ec 100644 --- a/apps/meteor/app/livechat/server/lib/QueueManager.ts +++ b/apps/meteor/app/livechat/server/lib/QueueManager.ts @@ -1,10 +1,10 @@ import type { ILivechatInquiryRecord, ILivechatVisitor, IMessage, IOmnichannelRoom, SelectedAgent } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import { LivechatInquiry, LivechatRooms, Users } from '@rocket.chat/models'; import { Match, check } from 'meteor/check'; import { Meteor } from 'meteor/meteor'; import { callbacks } from '../../../../lib/callbacks'; -import { Logger } from '../../../logger/server'; import { checkServiceStatus, createLivechatRoom, createLivechatInquiry } from './Helper'; import { RoutingManager } from './RoutingManager'; diff --git a/apps/meteor/app/livechat/server/lib/RoutingManager.ts b/apps/meteor/app/livechat/server/lib/RoutingManager.ts index fc52257b4e8..24fb952f1cc 100644 --- a/apps/meteor/app/livechat/server/lib/RoutingManager.ts +++ b/apps/meteor/app/livechat/server/lib/RoutingManager.ts @@ -10,13 +10,13 @@ import type { InquiryWithAgentInfo, TransferData, } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import { LivechatInquiry, LivechatRooms, Subscriptions, Rooms, Users } from '@rocket.chat/models'; import { Match, check } from 'meteor/check'; import { Meteor } from 'meteor/meteor'; import { Apps, AppEvents } from '../../../../ee/server/apps'; import { callbacks } from '../../../../lib/callbacks'; -import { Logger } from '../../../../server/lib/logger/Logger'; import { createLivechatSubscription, dispatchAgentDelegated, diff --git a/apps/meteor/app/livechat/server/lib/logger.ts b/apps/meteor/app/livechat/server/lib/logger.ts index ee6b2969c5c..bb452cd4db0 100644 --- a/apps/meteor/app/livechat/server/lib/logger.ts +++ b/apps/meteor/app/livechat/server/lib/logger.ts @@ -1,4 +1,4 @@ -import { Logger } from '../../../../server/lib/logger/Logger'; +import { Logger } from '@rocket.chat/logger'; export const callbackLogger = new Logger('[Omnichannel] Callback'); export const businessHourLogger = new Logger('Business Hour'); diff --git a/apps/meteor/app/livechat/server/lib/stream/agentStatus.ts b/apps/meteor/app/livechat/server/lib/stream/agentStatus.ts index f5e57138730..bbce5d16efb 100644 --- a/apps/meteor/app/livechat/server/lib/stream/agentStatus.ts +++ b/apps/meteor/app/livechat/server/lib/stream/agentStatus.ts @@ -1,4 +1,5 @@ -import { Logger } from '../../../../logger/server'; +import { Logger } from '@rocket.chat/logger'; + import { settings } from '../../../../settings/server'; import { Livechat } from '../Livechat'; diff --git a/apps/meteor/app/logger/server/index.ts b/apps/meteor/app/logger/server/index.ts deleted file mode 100644 index 5630b3a0aa2..00000000000 --- a/apps/meteor/app/logger/server/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -// TODO there are imports pointing to this file still, ideally we should point everything to "/server/lib/logger/Logger" and remove this file -export { Logger } from '../../../server/lib/logger/Logger'; diff --git a/apps/meteor/app/message-mark-as-unread/server/logger.ts b/apps/meteor/app/message-mark-as-unread/server/logger.ts index dc95ec0320d..23a21f529cd 100644 --- a/apps/meteor/app/message-mark-as-unread/server/logger.ts +++ b/apps/meteor/app/message-mark-as-unread/server/logger.ts @@ -1,4 +1,4 @@ -import { Logger } from '../../logger/server'; +import { Logger } from '@rocket.chat/logger'; const logger = new Logger('MessageMarkAsUnread'); export default logger; diff --git a/apps/meteor/app/meteor-accounts-saml/server/lib/Utils.ts b/apps/meteor/app/meteor-accounts-saml/server/lib/Utils.ts index 260b8257bd8..9b6e2a42a4c 100644 --- a/apps/meteor/app/meteor-accounts-saml/server/lib/Utils.ts +++ b/apps/meteor/app/meteor-accounts-saml/server/lib/Utils.ts @@ -1,8 +1,9 @@ import { EventEmitter } from 'events'; import zlib from 'zlib'; +import type { Logger } from '@rocket.chat/logger'; + import { ensureArray } from '../../../../lib/utils/arrayUtils'; -import type { Logger } from '../../../../server/lib/logger/Logger'; import type { IUserDataMap, IAttributeMapping } from '../definition/IAttributeMapping'; import type { ISAMLGlobalSettings } from '../definition/ISAMLGlobalSettings'; import type { ISAMLUser } from '../definition/ISAMLUser'; diff --git a/apps/meteor/app/meteor-accounts-saml/server/startup.ts b/apps/meteor/app/meteor-accounts-saml/server/startup.ts index 91a94828eb7..7a2bf16d324 100644 --- a/apps/meteor/app/meteor-accounts-saml/server/startup.ts +++ b/apps/meteor/app/meteor-accounts-saml/server/startup.ts @@ -1,6 +1,6 @@ +import { Logger } from '@rocket.chat/logger'; import { Meteor } from 'meteor/meteor'; -import { Logger } from '../../logger/server'; import { settings } from '../../settings/server'; import { SAMLUtils } from './lib/Utils'; import { loadSamlServiceProviders, addSettings } from './lib/settings'; diff --git a/apps/meteor/app/oembed/server/server.ts b/apps/meteor/app/oembed/server/server.ts index 02fdeb90921..75387f79621 100644 --- a/apps/meteor/app/oembed/server/server.ts +++ b/apps/meteor/app/oembed/server/server.ts @@ -3,6 +3,7 @@ import URL from 'url'; import type { OEmbedUrlContentResult, OEmbedUrlWithMetadata, IMessage, MessageAttachment, OEmbedMeta } from '@rocket.chat/core-typings'; import { isOEmbedUrlContentResult, isOEmbedUrlWithMetadata } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import { Messages, OEmbedCache } from '@rocket.chat/models'; import { serverFetch as fetch } from '@rocket.chat/server-fetch'; import { camelCase } from 'change-case'; @@ -14,7 +15,6 @@ import _ from 'underscore'; import { callbacks } from '../../../lib/callbacks'; import { isURL } from '../../../lib/utils/isURL'; -import { Logger } from '../../logger/server'; import { settings } from '../../settings/server'; import { Info } from '../../utils/rocketchat.info'; diff --git a/apps/meteor/app/push/server/logger.ts b/apps/meteor/app/push/server/logger.ts index f770aef378f..5793949089d 100644 --- a/apps/meteor/app/push/server/logger.ts +++ b/apps/meteor/app/push/server/logger.ts @@ -1,3 +1,3 @@ -import { Logger } from '../../../server/lib/logger/Logger'; +import { Logger } from '@rocket.chat/logger'; export const logger = new Logger('Push'); diff --git a/apps/meteor/app/search/server/logger/logger.ts b/apps/meteor/app/search/server/logger/logger.ts index f002e70073d..ac103d5da06 100644 --- a/apps/meteor/app/search/server/logger/logger.ts +++ b/apps/meteor/app/search/server/logger/logger.ts @@ -1,3 +1,3 @@ -import { Logger } from '../../../logger/server'; +import { Logger } from '@rocket.chat/logger'; export const SearchLogger = new Logger('Search Logger'); diff --git a/apps/meteor/app/slackbridge/server/logger.ts b/apps/meteor/app/slackbridge/server/logger.ts index 4535a6af6b0..6c358603809 100644 --- a/apps/meteor/app/slackbridge/server/logger.ts +++ b/apps/meteor/app/slackbridge/server/logger.ts @@ -1,4 +1,4 @@ -import { Logger } from '../../logger/server'; +import { Logger } from '@rocket.chat/logger'; const logger = new Logger('SlackBridge'); diff --git a/apps/meteor/app/statistics/server/lib/SAUMonitor.ts b/apps/meteor/app/statistics/server/lib/SAUMonitor.ts index 24bfd10dc5f..b77a268fe11 100644 --- a/apps/meteor/app/statistics/server/lib/SAUMonitor.ts +++ b/apps/meteor/app/statistics/server/lib/SAUMonitor.ts @@ -1,5 +1,6 @@ import type { ISession, ISessionDevice, ISocketConnectionLogged, IUser } from '@rocket.chat/core-typings'; import { cronJobs } from '@rocket.chat/cron'; +import { Logger } from '@rocket.chat/logger'; import { Sessions, Users } from '@rocket.chat/models'; import mem from 'mem'; import { Meteor } from 'meteor/meteor'; @@ -7,7 +8,6 @@ import UAParser from 'ua-parser-js'; import { getMostImportantRole } from '../../../../lib/roles/getMostImportantRole'; import { getClientAddress } from '../../../../server/lib/getClientAddress'; -import { Logger } from '../../../../server/lib/logger/Logger'; import { aggregates } from '../../../../server/models/raw/Sessions'; import { sauEvents } from '../../../../server/services/sauMonitor/events'; import { UAParserMobile, UAParserDesktop } from './UAParserCustom'; diff --git a/apps/meteor/app/utils/lib/templateVarHandler.ts b/apps/meteor/app/utils/lib/templateVarHandler.ts index 54f28ebee7a..cf8279930bd 100644 --- a/apps/meteor/app/utils/lib/templateVarHandler.ts +++ b/apps/meteor/app/utils/lib/templateVarHandler.ts @@ -1,4 +1,4 @@ -import { Logger } from '../../../server/lib/logger/Logger'; +import { Logger } from '@rocket.chat/logger'; const logger = new Logger('TemplateVarHandler'); diff --git a/apps/meteor/app/version-check/server/logger.ts b/apps/meteor/app/version-check/server/logger.ts index dc35a0b0d50..b12e06d9a14 100644 --- a/apps/meteor/app/version-check/server/logger.ts +++ b/apps/meteor/app/version-check/server/logger.ts @@ -1,3 +1,3 @@ -import { Logger } from '../../logger/server'; +import { Logger } from '@rocket.chat/logger'; export default new Logger('VersionCheck'); diff --git a/apps/meteor/app/webdav/server/methods/uploadFileToWebdav.ts b/apps/meteor/app/webdav/server/methods/uploadFileToWebdav.ts index ed92d15c8d2..8a2e1badd27 100644 --- a/apps/meteor/app/webdav/server/methods/uploadFileToWebdav.ts +++ b/apps/meteor/app/webdav/server/methods/uploadFileToWebdav.ts @@ -1,9 +1,9 @@ import { MeteorError } from '@rocket.chat/core-services'; import type { IWebdavAccount } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import type { ServerMethods, TranslationKey } from '@rocket.chat/ui-contexts'; import { Meteor } from 'meteor/meteor'; -import { Logger } from '../../../logger/server'; import { settings } from '../../../settings/server'; import { uploadFileToWebdav } from '../lib/uploadFileToWebdav'; diff --git a/apps/meteor/ee/app/livechat-enterprise/server/lib/AutoCloseOnHoldScheduler.ts b/apps/meteor/ee/app/livechat-enterprise/server/lib/AutoCloseOnHoldScheduler.ts index 08633516f3f..0efda85e25a 100644 --- a/apps/meteor/ee/app/livechat-enterprise/server/lib/AutoCloseOnHoldScheduler.ts +++ b/apps/meteor/ee/app/livechat-enterprise/server/lib/AutoCloseOnHoldScheduler.ts @@ -1,12 +1,12 @@ import { Agenda } from '@rocket.chat/agenda'; import type { IUser } from '@rocket.chat/core-typings'; +import type { MainLogger } from '@rocket.chat/logger'; import { LivechatRooms, Users } from '@rocket.chat/models'; import { Meteor } from 'meteor/meteor'; import { MongoInternals } from 'meteor/mongo'; import moment from 'moment'; import { Livechat } from '../../../../../app/livechat/server/lib/LivechatTyped'; -import type { MainLogger } from '../../../../../server/lib/logger/getPino'; import { schedulerLogger } from './logger'; const SCHEDULER_NAME = 'omnichannel_auto_close_on_hold_scheduler'; diff --git a/apps/meteor/ee/app/livechat-enterprise/server/lib/AutoTransferChatScheduler.ts b/apps/meteor/ee/app/livechat-enterprise/server/lib/AutoTransferChatScheduler.ts index 8715cc59847..7e52cc266c0 100644 --- a/apps/meteor/ee/app/livechat-enterprise/server/lib/AutoTransferChatScheduler.ts +++ b/apps/meteor/ee/app/livechat-enterprise/server/lib/AutoTransferChatScheduler.ts @@ -1,5 +1,6 @@ import { Agenda } from '@rocket.chat/agenda'; import type { IUser } from '@rocket.chat/core-typings'; +import type { MainLogger } from '@rocket.chat/logger'; import { LivechatRooms, Users } from '@rocket.chat/models'; import { Meteor } from 'meteor/meteor'; import { MongoInternals } from 'meteor/mongo'; @@ -8,7 +9,6 @@ import { Livechat } from '../../../../../app/livechat/server'; import { forwardRoomToAgent } from '../../../../../app/livechat/server/lib/Helper'; import { RoutingManager } from '../../../../../app/livechat/server/lib/RoutingManager'; import { settings } from '../../../../../app/settings/server'; -import type { MainLogger } from '../../../../../server/lib/logger/getPino'; import { schedulerLogger } from './logger'; const SCHEDULER_NAME = 'omnichannel_scheduler'; diff --git a/apps/meteor/ee/app/livechat-enterprise/server/lib/QueueInactivityMonitor.ts b/apps/meteor/ee/app/livechat-enterprise/server/lib/QueueInactivityMonitor.ts index cba6ce9cceb..d7ad14251d3 100644 --- a/apps/meteor/ee/app/livechat-enterprise/server/lib/QueueInactivityMonitor.ts +++ b/apps/meteor/ee/app/livechat-enterprise/server/lib/QueueInactivityMonitor.ts @@ -1,5 +1,6 @@ import { Agenda } from '@rocket.chat/agenda'; import type { IUser, IOmnichannelRoom } from '@rocket.chat/core-typings'; +import type { MainLogger } from '@rocket.chat/logger'; import { LivechatRooms, LivechatInquiry as LivechatInquiryRaw, Users } from '@rocket.chat/models'; import { Meteor } from 'meteor/meteor'; import { MongoInternals } from 'meteor/mongo'; @@ -8,7 +9,6 @@ import type { Db } from 'mongodb'; import { Livechat } from '../../../../../app/livechat/server/lib/LivechatTyped'; import { settings } from '../../../../../app/settings/server'; import { i18n } from '../../../../../server/lib/i18n'; -import type { MainLogger } from '../../../../../server/lib/logger/getPino'; import { schedulerLogger } from './logger'; const SCHEDULER_NAME = 'omnichannel_queue_inactivity_monitor'; diff --git a/apps/meteor/ee/app/livechat-enterprise/server/lib/VisitorInactivityMonitor.ts b/apps/meteor/ee/app/livechat-enterprise/server/lib/VisitorInactivityMonitor.ts index 8b43a80b3aa..3df470d3137 100644 --- a/apps/meteor/ee/app/livechat-enterprise/server/lib/VisitorInactivityMonitor.ts +++ b/apps/meteor/ee/app/livechat-enterprise/server/lib/VisitorInactivityMonitor.ts @@ -1,13 +1,13 @@ import { OmnichannelEEService } from '@rocket.chat/core-services'; import type { ILivechatVisitor, IOmnichannelRoom, IUser } from '@rocket.chat/core-typings'; import { cronJobs } from '@rocket.chat/cron'; +import type { MainLogger } from '@rocket.chat/logger'; import { LivechatVisitors, LivechatRooms, LivechatDepartment, Users } from '@rocket.chat/models'; import { Livechat } from '../../../../../app/livechat/server/lib/LivechatTyped'; import { settings } from '../../../../../app/settings/server'; import { callbacks } from '../../../../../lib/callbacks'; import { i18n } from '../../../../../server/lib/i18n'; -import type { MainLogger } from '../../../../../server/lib/logger/getPino'; import { schedulerLogger } from './logger'; const isPromiseRejectedResult = (result: any): result is PromiseRejectedResult => result && result.status === 'rejected'; diff --git a/apps/meteor/ee/app/livechat-enterprise/server/lib/logger.ts b/apps/meteor/ee/app/livechat-enterprise/server/lib/logger.ts index 9d31072d43a..cef65432505 100644 --- a/apps/meteor/ee/app/livechat-enterprise/server/lib/logger.ts +++ b/apps/meteor/ee/app/livechat-enterprise/server/lib/logger.ts @@ -1,4 +1,4 @@ -import { Logger } from '../../../../../app/logger/server'; +import { Logger } from '@rocket.chat/logger'; export const logger = new Logger('LivechatEnterprise'); diff --git a/apps/meteor/ee/app/livechat-enterprise/server/services/omnichannel.internalService.ts b/apps/meteor/ee/app/livechat-enterprise/server/services/omnichannel.internalService.ts index 162f098943f..e9911ffe246 100644 --- a/apps/meteor/ee/app/livechat-enterprise/server/services/omnichannel.internalService.ts +++ b/apps/meteor/ee/app/livechat-enterprise/server/services/omnichannel.internalService.ts @@ -2,12 +2,12 @@ import { ServiceClassInternal, Message } from '@rocket.chat/core-services'; import type { IOmnichannelEEService } from '@rocket.chat/core-services'; import { isOmnichannelRoom } from '@rocket.chat/core-typings'; import type { IOmnichannelRoom, IUser, ILivechatInquiryRecord, IOmnichannelSystemMessage } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import { LivechatRooms, Subscriptions, LivechatInquiry } from '@rocket.chat/models'; import { dispatchAgentDelegated } from '../../../../../app/livechat/server/lib/Helper'; import { queueInquiry } from '../../../../../app/livechat/server/lib/QueueManager'; import { RoutingManager } from '../../../../../app/livechat/server/lib/RoutingManager'; -import { Logger } from '../../../../../app/logger/server'; import { callbacks } from '../../../../../lib/callbacks'; export class OmnichannelEE extends ServiceClassInternal implements IOmnichannelEEService { diff --git a/apps/meteor/ee/server/apps/marketplace/appEnableCheck.ts b/apps/meteor/ee/server/apps/marketplace/appEnableCheck.ts index 3f1c0a9ae73..959b8ff5f8e 100644 --- a/apps/meteor/ee/server/apps/marketplace/appEnableCheck.ts +++ b/apps/meteor/ee/server/apps/marketplace/appEnableCheck.ts @@ -1,7 +1,7 @@ import { AppStatus } from '@rocket.chat/apps-engine/definition/AppStatus'; import type { IMarketplaceInfo } from '@rocket.chat/apps-engine/server/marketplace'; +import type { Logger } from '@rocket.chat/logger'; -import type { Logger } from '../../../../server/lib/logger/Logger'; import { getMarketplaceAppInfo } from './appInfo'; export const appEnableCheck = async ({ diff --git a/apps/meteor/ee/server/apps/orchestrator.js b/apps/meteor/ee/server/apps/orchestrator.js index c336eb2a1f4..d6d1041eb41 100644 --- a/apps/meteor/ee/server/apps/orchestrator.js +++ b/apps/meteor/ee/server/apps/orchestrator.js @@ -1,6 +1,7 @@ import { EssentialAppDisabledException } from '@rocket.chat/apps-engine/definition/exceptions'; import { AppInterface } from '@rocket.chat/apps-engine/definition/metadata'; import { AppManager } from '@rocket.chat/apps-engine/server/AppManager'; +import { Logger } from '@rocket.chat/logger'; import { AppLogs, Apps as AppsModel, AppsPersistence } from '@rocket.chat/models'; import { Meteor } from 'meteor/meteor'; @@ -17,7 +18,6 @@ import { } from '../../../app/apps/server/converters'; import { AppThreadsConverter } from '../../../app/apps/server/converters/threads'; import { settings, settingsRegistry } from '../../../app/settings/server'; -import { Logger } from '../../../server/lib/logger/Logger'; import { canEnableApp } from '../../app/license/server/license'; import { AppServerNotifier, AppsRestApi, AppUIKitInteractionApi } from './communication'; import { AppRealLogsStorage, AppRealStorage, ConfigurableAppSourceStorage } from './storage'; diff --git a/apps/meteor/ee/server/configuration/oauth.ts b/apps/meteor/ee/server/configuration/oauth.ts index cdf48db6565..984670af600 100644 --- a/apps/meteor/ee/server/configuration/oauth.ts +++ b/apps/meteor/ee/server/configuration/oauth.ts @@ -1,8 +1,8 @@ import type { IUser } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import { Roles } from '@rocket.chat/models'; import { capitalize } from '@rocket.chat/string-helpers'; -import { Logger } from '../../../app/logger/server'; import { settings } from '../../../app/settings/server'; import { callbacks } from '../../../lib/callbacks'; import { onLicense } from '../../app/license/server'; diff --git a/apps/meteor/ee/server/lib/ldap/copyCustomFieldsLDAP.spec.ts b/apps/meteor/ee/server/lib/ldap/copyCustomFieldsLDAP.spec.ts index 9ad458f2176..01e37fa79aa 100644 --- a/apps/meteor/ee/server/lib/ldap/copyCustomFieldsLDAP.spec.ts +++ b/apps/meteor/ee/server/lib/ldap/copyCustomFieldsLDAP.spec.ts @@ -1,7 +1,7 @@ import type { IImportUser, ILDAPEntry } from '@rocket.chat/core-typings'; +import type { Logger } from '@rocket.chat/logger'; import { expect, spy } from 'chai'; -import type { Logger } from '../../../../app/logger/server'; import { copyCustomFieldsLDAP } from './copyCustomFieldsLDAP'; describe('LDAP copyCustomFieldsLDAP', () => { diff --git a/apps/meteor/ee/server/lib/ldap/copyCustomFieldsLDAP.ts b/apps/meteor/ee/server/lib/ldap/copyCustomFieldsLDAP.ts index d3ab09d7b24..c5a7c56b63e 100644 --- a/apps/meteor/ee/server/lib/ldap/copyCustomFieldsLDAP.ts +++ b/apps/meteor/ee/server/lib/ldap/copyCustomFieldsLDAP.ts @@ -1,6 +1,6 @@ import type { IImportUser, ILDAPEntry } from '@rocket.chat/core-typings'; +import type { Logger } from '@rocket.chat/logger'; -import type { Logger } from '../../../../app/logger/server'; import { templateVarHandler } from '../../../../app/utils/lib/templateVarHandler'; import { getNestedProp } from './getNestedProp'; import { replacesNestedValues } from './replacesNestedValues'; diff --git a/apps/meteor/ee/server/lib/oauth/Manager.ts b/apps/meteor/ee/server/lib/oauth/Manager.ts index 3f5631fc2ff..b24d7436a78 100644 --- a/apps/meteor/ee/server/lib/oauth/Manager.ts +++ b/apps/meteor/ee/server/lib/oauth/Manager.ts @@ -1,9 +1,9 @@ import type { IUser } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import { Roles, Rooms } from '@rocket.chat/models'; import { addUserToRoom } from '../../../../app/lib/server/functions/addUserToRoom'; import { createRoom } from '../../../../app/lib/server/functions/createRoom'; -import { Logger } from '../../../../app/logger/server'; import { getValidRoomName } from '../../../../app/utils/server/lib/getValidRoomName'; import { syncUserRoles } from '../syncUserRoles'; diff --git a/apps/meteor/ee/server/services/package.json b/apps/meteor/ee/server/services/package.json index 0fcbaf37931..deb8599be0f 100644 --- a/apps/meteor/ee/server/services/package.json +++ b/apps/meteor/ee/server/services/package.json @@ -43,7 +43,7 @@ "moleculer": "^0.14.29", "mongodb": "^4.12.1", "nats": "^2.6.1", - "pino": "^7.11.0", + "pino": "^8.15.0", "sodium-native": "^3.3.0", "sodium-plus": "^0.9.0", "uuid": "^8.3.2", diff --git a/apps/meteor/lib/callbacks/callbacksBase.ts b/apps/meteor/lib/callbacks/callbacksBase.ts index ca9c8c19877..e6681df7832 100644 --- a/apps/meteor/lib/callbacks/callbacksBase.ts +++ b/apps/meteor/lib/callbacks/callbacksBase.ts @@ -1,6 +1,6 @@ +import type { Logger } from '@rocket.chat/logger'; import { Random } from '@rocket.chat/random'; -import type { Logger } from '../../app/logger/server'; import { compareByRanking } from '../utils/comparisons'; enum CallbackPriority { diff --git a/apps/meteor/package.json b/apps/meteor/package.json index 87a4afaf164..b2e6a1bb979 100644 --- a/apps/meteor/package.json +++ b/apps/meteor/package.json @@ -248,6 +248,7 @@ "@rocket.chat/instance-status": "workspace:^", "@rocket.chat/layout": "next", "@rocket.chat/log-format": "workspace:^", + "@rocket.chat/logger": "workspace:^", "@rocket.chat/logo": "next", "@rocket.chat/memo": "next", "@rocket.chat/message-parser": "next", @@ -384,7 +385,7 @@ "path-to-regexp": "^6.2.1", "pdfjs-dist": "^2.13.216", "photoswipe": "^4.1.3", - "pino": "^7.11.0", + "pino": "^8.15.0", "postis": "^2.2.0", "prom-client": "^14.0.1", "prometheus-gc-stats": "^0.6.4", diff --git a/apps/meteor/server/cron/statistics.ts b/apps/meteor/server/cron/statistics.ts index 9da48008808..b6f58b66d38 100644 --- a/apps/meteor/server/cron/statistics.ts +++ b/apps/meteor/server/cron/statistics.ts @@ -1,11 +1,11 @@ import { cronJobs } from '@rocket.chat/cron'; +import type { Logger } from '@rocket.chat/logger'; import { serverFetch as fetch } from '@rocket.chat/server-fetch'; import { Meteor } from 'meteor/meteor'; import { getWorkspaceAccessToken } from '../../app/cloud/server'; import { settings } from '../../app/settings/server'; import { statistics } from '../../app/statistics/server'; -import type { Logger } from '../lib/logger/Logger'; async function generateStatistics(logger: Logger): Promise { const cronStatistics: Record = await statistics.save(); diff --git a/apps/meteor/server/database/DatabaseWatcher.ts b/apps/meteor/server/database/DatabaseWatcher.ts index 142fd749f12..a31027d7107 100644 --- a/apps/meteor/server/database/DatabaseWatcher.ts +++ b/apps/meteor/server/database/DatabaseWatcher.ts @@ -1,11 +1,11 @@ import EventEmitter from 'events'; import type { IRocketChatRecord } from '@rocket.chat/core-typings'; +import type { Logger } from '@rocket.chat/logger'; import { escapeRegExp } from '@rocket.chat/string-helpers'; import type { Timestamp, Db, ChangeStreamDeleteDocument, ChangeStreamInsertDocument, ChangeStreamUpdateDocument } from 'mongodb'; import { MongoClient } from 'mongodb'; -import type { Logger } from '../lib/logger/Logger'; import { convertChangeStreamPayload } from './convertChangeStreamPayload'; import { convertOplogPayload } from './convertOplogPayload'; import { getWatchCollections } from './watchCollections'; diff --git a/apps/meteor/server/features/EmailInbox/logger.ts b/apps/meteor/server/features/EmailInbox/logger.ts index c27fed8fd97..38352abbb8f 100644 --- a/apps/meteor/server/features/EmailInbox/logger.ts +++ b/apps/meteor/server/features/EmailInbox/logger.ts @@ -1,3 +1,3 @@ -import { Logger } from '../../lib/logger/Logger'; +import { Logger } from '@rocket.chat/logger'; export const logger = new Logger('EmailInbox'); diff --git a/apps/meteor/server/importPackages.ts b/apps/meteor/server/importPackages.ts index fd6a7fb094a..ec5d68dd6bd 100644 --- a/apps/meteor/server/importPackages.ts +++ b/apps/meteor/server/importPackages.ts @@ -35,7 +35,6 @@ import '../app/importer-slack-users/server'; import '../app/integrations/server'; import '../app/irc/server'; import '../app/lib/server'; -import '../app/logger/server'; import '../app/token-login/server'; import '../app/mailer/server/api'; import '../app/markdown/server'; diff --git a/apps/meteor/server/lib/ldap/DataConverter.ts b/apps/meteor/server/lib/ldap/DataConverter.ts index 992c533e2d3..70f1f4451a5 100644 --- a/apps/meteor/server/lib/ldap/DataConverter.ts +++ b/apps/meteor/server/lib/ldap/DataConverter.ts @@ -1,10 +1,10 @@ import type { IImportUser, IUser } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import { Users } from '@rocket.chat/models'; import type { IConverterOptions } from '../../../app/importer/server/classes/ImportDataConverter'; import { VirtualDataConverter } from '../../../app/importer/server/classes/VirtualDataConverter'; import { settings } from '../../../app/settings/server'; -import { Logger } from '../logger/Logger'; const logger = new Logger('LDAP Data Converter'); diff --git a/apps/meteor/server/lib/ldap/Logger.ts b/apps/meteor/server/lib/ldap/Logger.ts index 1b2341dc548..f7dd872e197 100644 --- a/apps/meteor/server/lib/ldap/Logger.ts +++ b/apps/meteor/server/lib/ldap/Logger.ts @@ -1,4 +1,4 @@ -import { Logger } from '../logger/Logger'; +import { Logger } from '@rocket.chat/logger'; export const logger = new Logger('LDAP'); export const connLogger = logger.section('Connection'); diff --git a/apps/meteor/server/lib/logger/startup.ts b/apps/meteor/server/lib/logger/startup.ts index 1c8f1d47de0..942bed95a9f 100644 --- a/apps/meteor/server/lib/logger/startup.ts +++ b/apps/meteor/server/lib/logger/startup.ts @@ -1,7 +1,6 @@ +import { setQueueLimit, logLevel, type LogLevelSetting } from '@rocket.chat/logger'; + import { settings } from '../../../app/settings/server'; -import type { LogLevelSetting } from './logLevel'; -import { logLevel } from './logLevel'; -import { setQueueLimit } from './logQueue'; settings.watch('Log_Level', (value) => { if (value != null) { diff --git a/apps/meteor/server/lib/logger/system.ts b/apps/meteor/server/lib/logger/system.ts index 7e1641faee8..a4ae954c6d4 100644 --- a/apps/meteor/server/lib/logger/system.ts +++ b/apps/meteor/server/lib/logger/system.ts @@ -1,3 +1,3 @@ -import { Logger } from './Logger'; +import { Logger } from '@rocket.chat/logger'; export const SystemLogger = new Logger('System'); diff --git a/apps/meteor/server/lib/migrations.ts b/apps/meteor/server/lib/migrations.ts index 436622649a2..da3aeec761e 100644 --- a/apps/meteor/server/lib/migrations.ts +++ b/apps/meteor/server/lib/migrations.ts @@ -1,9 +1,9 @@ import type { IControl } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import { Migrations } from '@rocket.chat/models'; import { Info } from '../../app/utils/rocketchat.info'; import { sleep } from '../../lib/utils/sleep'; -import { Logger } from './logger/Logger'; import { showErrorBox } from './logger/showBox'; type IMigration = { diff --git a/apps/meteor/server/lib/settingsRegenerator.ts b/apps/meteor/server/lib/settingsRegenerator.ts index 4347081fd15..8a566b989a8 100644 --- a/apps/meteor/server/lib/settingsRegenerator.ts +++ b/apps/meteor/server/lib/settingsRegenerator.ts @@ -1,9 +1,8 @@ // Validates settings on DB are correct on structure // And deletes invalid ones +import { Logger } from '@rocket.chat/logger'; import { Settings } from '@rocket.chat/models'; -import { Logger } from './logger/Logger'; - // Validates settings on DB are correct on structure by matching the ones missing all the required fields const logger = new Logger('SettingsRegenerator'); export async function settingsRegenerator() { diff --git a/apps/meteor/server/models/raw/VoipRoom.ts b/apps/meteor/server/models/raw/VoipRoom.ts index 3e0f2372eb0..6ac629d807b 100644 --- a/apps/meteor/server/models/raw/VoipRoom.ts +++ b/apps/meteor/server/models/raw/VoipRoom.ts @@ -1,9 +1,9 @@ import { type IVoipRoomClosingInfo, type IVoipRoom, type RocketChatRecordDeleted, UserStatus } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import type { FindPaginated, IVoipRoomModel } from '@rocket.chat/model-typings'; import { escapeRegExp } from '@rocket.chat/string-helpers'; import type { Collection, FindCursor, Db, Filter, FindOptions, UpdateResult, Document } from 'mongodb'; -import { Logger } from '../../lib/logger/Logger'; import { BaseRaw } from './BaseRaw'; export class VoipRoomRaw extends BaseRaw implements IVoipRoomModel { diff --git a/apps/meteor/server/services/calendar/service.ts b/apps/meteor/server/services/calendar/service.ts index 4242057cc88..e3f3e0af83d 100644 --- a/apps/meteor/server/services/calendar/service.ts +++ b/apps/meteor/server/services/calendar/service.ts @@ -2,13 +2,13 @@ import type { ICalendarService } from '@rocket.chat/core-services'; import { ServiceClassInternal, api } from '@rocket.chat/core-services'; import type { IUser, ICalendarEvent } from '@rocket.chat/core-typings'; import { cronJobs } from '@rocket.chat/cron'; +import { Logger } from '@rocket.chat/logger'; import type { InsertionModel } from '@rocket.chat/model-typings'; import { CalendarEvent } from '@rocket.chat/models'; import type { UpdateResult, DeleteResult } from 'mongodb'; import { settings } from '../../../app/settings/server'; import { getUserPreference } from '../../../app/utils/server/lib/getUserPreference'; -import { Logger } from '../../lib/logger/Logger'; const logger = new Logger('Calendar'); diff --git a/apps/meteor/server/services/federation/infrastructure/rocket-chat/adapters/logger.ts b/apps/meteor/server/services/federation/infrastructure/rocket-chat/adapters/logger.ts index 5147647c191..ddb606d37df 100644 --- a/apps/meteor/server/services/federation/infrastructure/rocket-chat/adapters/logger.ts +++ b/apps/meteor/server/services/federation/infrastructure/rocket-chat/adapters/logger.ts @@ -1,4 +1,4 @@ -import { Logger } from '../../../../../lib/logger/Logger'; +import { Logger } from '@rocket.chat/logger'; const logger = new Logger('Federation_Matrix'); diff --git a/apps/meteor/server/services/omnichannel-voip/service.ts b/apps/meteor/server/services/omnichannel-voip/service.ts index f2a4536a7ff..d5c17f545fb 100644 --- a/apps/meteor/server/services/omnichannel-voip/service.ts +++ b/apps/meteor/server/services/omnichannel-voip/service.ts @@ -12,13 +12,13 @@ import type { IVoipRoomClosingInfo, } from '@rocket.chat/core-typings'; import { isILivechatVisitor, OmnichannelSourceType, isVoipRoom, VoipClientEvents, UserStatus } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import { Users, VoipRoom, PbxEvents } from '@rocket.chat/models'; import type { PaginatedResult } from '@rocket.chat/rest-typings'; import type { FindOptions } from 'mongodb'; import _ from 'underscore'; import { sendMessage } from '../../../app/lib/server/functions/sendMessage'; -import { Logger } from '../../lib/logger/Logger'; import type { IOmniRoomClosingMessage } from './internalTypes'; export class OmnichannelVoipService extends ServiceClassInternal implements IOmnichannelVoipService { diff --git a/apps/meteor/server/services/startup.ts b/apps/meteor/server/services/startup.ts index 82866e57eb7..96841562055 100644 --- a/apps/meteor/server/services/startup.ts +++ b/apps/meteor/server/services/startup.ts @@ -1,10 +1,10 @@ import { api } from '@rocket.chat/core-services'; +import { Logger } from '@rocket.chat/logger'; import { OmnichannelTranscript, QueueWorker } from '@rocket.chat/omnichannel-services'; import { MongoInternals } from 'meteor/mongo'; import { AuthorizationLivechat } from '../../app/livechat/server/roomAccessValidator.internalService'; import { isRunningMs } from '../lib/isRunningMs'; -import { Logger } from '../lib/logger/Logger'; import { AnalyticsService } from './analytics/service'; import { AppsEngineService } from './apps-engine/service'; import { BannerService } from './banner/service'; diff --git a/apps/meteor/server/services/voip/connector/asterisk/CommandHandler.ts b/apps/meteor/server/services/voip/connector/asterisk/CommandHandler.ts index e832f6572e6..93448da657d 100644 --- a/apps/meteor/server/services/voip/connector/asterisk/CommandHandler.ts +++ b/apps/meteor/server/services/voip/connector/asterisk/CommandHandler.ts @@ -14,9 +14,9 @@ * added as and when required. */ import type { IVoipConnectorResult, IManagementServerConnectionStatus, IManagementConfigData } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import type { Db } from 'mongodb'; -import { Logger } from '../../../../lib/logger/Logger'; import { getManagementServerConfig } from '../../lib/Helper'; import { WebsocketConnection } from '../websocket/WebsocketConnection'; import type { Command } from './Command'; diff --git a/apps/meteor/server/services/voip/connector/asterisk/ami/ACDQueue.ts b/apps/meteor/server/services/voip/connector/asterisk/ami/ACDQueue.ts index ecb7bb9607d..7a1d3fbad4b 100644 --- a/apps/meteor/server/services/voip/connector/asterisk/ami/ACDQueue.ts +++ b/apps/meteor/server/services/voip/connector/asterisk/ami/ACDQueue.ts @@ -3,9 +3,9 @@ * @remarks */ import type { IVoipConnectorResult } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import type { Db } from 'mongodb'; -import { Logger } from '../../../../../lib/logger/Logger'; import { Command, CommandType } from '../Command'; import { Commands } from '../Commands'; import { CallbackContext } from './CallbackContext'; diff --git a/apps/meteor/server/services/voip/connector/asterisk/ami/AMIConnection.ts b/apps/meteor/server/services/voip/connector/asterisk/ami/AMIConnection.ts index 0b000e5d29a..6d1db5be34e 100644 --- a/apps/meteor/server/services/voip/connector/asterisk/ami/AMIConnection.ts +++ b/apps/meteor/server/services/voip/connector/asterisk/ami/AMIConnection.ts @@ -8,9 +8,9 @@ * happens in /etc/asterisk/manager.conf file. * */ +import { Logger } from '@rocket.chat/logger'; import Manager from 'asterisk-manager'; -import { Logger } from '../../../../../lib/logger/Logger'; import type { Command } from '../Command'; import type { IConnection } from '../IConnection'; import type { CallbackContext } from './CallbackContext'; diff --git a/apps/meteor/server/services/voip/connector/asterisk/ami/CommandFactory.ts b/apps/meteor/server/services/voip/connector/asterisk/ami/CommandFactory.ts index b49851dcf95..8e923d6756f 100644 --- a/apps/meteor/server/services/voip/connector/asterisk/ami/CommandFactory.ts +++ b/apps/meteor/server/services/voip/connector/asterisk/ami/CommandFactory.ts @@ -6,9 +6,9 @@ * e.g even though extension_info and extension_list are two different commands, * they will be executed by |PJSIPEndpoint| class. */ +import { Logger } from '@rocket.chat/logger'; import type { Db } from 'mongodb'; -import { Logger } from '../../../../../lib/logger/Logger'; import { Command } from '../Command'; import { Commands } from '../Commands'; import { ACDQueue } from './ACDQueue'; diff --git a/apps/meteor/server/services/voip/connector/asterisk/ami/ContinuousMonitor.ts b/apps/meteor/server/services/voip/connector/asterisk/ami/ContinuousMonitor.ts index 84e7ffb7c80..f4d2a0d3c29 100644 --- a/apps/meteor/server/services/voip/connector/asterisk/ami/ContinuousMonitor.ts +++ b/apps/meteor/server/services/voip/connector/asterisk/ami/ContinuousMonitor.ts @@ -43,10 +43,10 @@ import { isIContactStatusEvent, isICallHangupEvent, } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import { Users, PbxEvents } from '@rocket.chat/models'; import type { Db } from 'mongodb'; -import { Logger } from '../../../../../lib/logger/Logger'; import { Command, CommandType } from '../Command'; import { Commands } from '../Commands'; import { ACDQueue } from './ACDQueue'; diff --git a/apps/meteor/server/services/voip/connector/asterisk/ami/PJSIPEndpoint.ts b/apps/meteor/server/services/voip/connector/asterisk/ami/PJSIPEndpoint.ts index e299fc42fd8..0e35b608d33 100644 --- a/apps/meteor/server/services/voip/connector/asterisk/ami/PJSIPEndpoint.ts +++ b/apps/meteor/server/services/voip/connector/asterisk/ami/PJSIPEndpoint.ts @@ -30,10 +30,10 @@ */ import { EndpointState } from '@rocket.chat/core-typings'; import type { IVoipConnectorResult, IExtensionDetails } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import type { Db } from 'mongodb'; import _ from 'underscore'; -import { Logger } from '../../../../../lib/logger/Logger'; import { Command, CommandType } from '../Command'; import { Commands } from '../Commands'; import { CallbackContext } from './CallbackContext'; diff --git a/apps/meteor/server/services/voip/connector/websocket/WebsocketConnection.ts b/apps/meteor/server/services/voip/connector/websocket/WebsocketConnection.ts index 1ad2a20772d..83515f2bd1b 100644 --- a/apps/meteor/server/services/voip/connector/websocket/WebsocketConnection.ts +++ b/apps/meteor/server/services/voip/connector/websocket/WebsocketConnection.ts @@ -8,9 +8,9 @@ * Websocket configurations can be found in asterisk's http.conf and pjsip.conf * */ +import { Logger } from '@rocket.chat/logger'; import WebSocket from 'ws'; -import { Logger } from '../../../../lib/logger/Logger'; import type { Command } from '../asterisk/Command'; import type { IConnection } from '../asterisk/IConnection'; import type { CallbackContext } from '../asterisk/ami/CallbackContext'; diff --git a/apps/meteor/server/services/voip/service.ts b/apps/meteor/server/services/voip/service.ts index 98261f68836..93d8bcefd95 100644 --- a/apps/meteor/server/services/voip/service.ts +++ b/apps/meteor/server/services/voip/service.ts @@ -12,10 +12,10 @@ import type { IQueueMembershipSubscription, IRegistrationInfo, } from '@rocket.chat/core-typings'; +import { Logger } from '@rocket.chat/logger'; import mem from 'mem'; import type { Db } from 'mongodb'; -import { Logger } from '../../lib/logger/Logger'; import { CommandType } from './connector/asterisk/Command'; import { CommandHandler } from './connector/asterisk/CommandHandler'; import { Commands } from './connector/asterisk/Commands'; diff --git a/apps/meteor/server/startup/callbacks.ts b/apps/meteor/server/startup/callbacks.ts index 3413bd32eea..a406355af81 100644 --- a/apps/meteor/server/startup/callbacks.ts +++ b/apps/meteor/server/startup/callbacks.ts @@ -1,8 +1,8 @@ +import { Logger } from '@rocket.chat/logger'; import { performance } from 'universal-perf-hooks'; import { metrics, StatsTracker } from '../../app/metrics/server'; import { callbacks } from '../../lib/callbacks'; -import { Logger } from '../lib/logger/Logger'; callbacks.setLogger(new Logger('Callbacks')); diff --git a/apps/meteor/server/startup/cron.ts b/apps/meteor/server/startup/cron.ts index 5e57a9cac83..3c0482069e7 100644 --- a/apps/meteor/server/startup/cron.ts +++ b/apps/meteor/server/startup/cron.ts @@ -1,6 +1,6 @@ +import { Logger } from '@rocket.chat/logger'; import { Meteor } from 'meteor/meteor'; -import { Logger } from '../../app/logger/server'; import { federationCron } from '../cron/federation'; import { npsCron } from '../cron/nps'; import { oembedCron } from '../cron/oembed'; diff --git a/apps/meteor/server/startup/watchDb.ts b/apps/meteor/server/startup/watchDb.ts index 2dae3645f2c..5a0dd0417f6 100644 --- a/apps/meteor/server/startup/watchDb.ts +++ b/apps/meteor/server/startup/watchDb.ts @@ -1,10 +1,10 @@ import { api } from '@rocket.chat/core-services'; +import { Logger } from '@rocket.chat/logger'; import { MongoInternals } from 'meteor/mongo'; import { metrics } from '../../app/metrics/server/lib/metrics'; import { DatabaseWatcher } from '../database/DatabaseWatcher'; import { db } from '../database/utils'; -import { Logger } from '../lib/logger/Logger'; import { SystemLogger } from '../lib/logger/system'; import { initWatchers } from '../modules/watchers/watchers.module'; diff --git a/apps/meteor/server/stream/stdout.ts b/apps/meteor/server/stream/stdout.ts index 349450bc6ac..dd27e85fe9e 100644 --- a/apps/meteor/server/stream/stdout.ts +++ b/apps/meteor/server/stream/stdout.ts @@ -1,10 +1,10 @@ import { performance } from 'perf_hooks'; import { format } from '@rocket.chat/log-format'; +import { getQueuedLogs, logEntries } from '@rocket.chat/logger'; import EJSON from 'ejson'; import notifications from '../../app/notifications/server/lib/Notifications'; -import { getQueuedLogs, logEntries } from '../lib/logger/logQueue'; const processString = (string: string, date: Date): string => { try { diff --git a/ee/apps/account-service/package.json b/ee/apps/account-service/package.json index 070ce24f486..4df71451f68 100644 --- a/ee/apps/account-service/package.json +++ b/ee/apps/account-service/package.json @@ -33,7 +33,7 @@ "moleculer": "^0.14.29", "mongodb": "^4.12.1", "nats": "^2.4.0", - "pino": "^8.4.2", + "pino": "^8.15.0", "polka": "^0.5.2", "uuid": "^9.0.0" }, diff --git a/ee/apps/authorization-service/package.json b/ee/apps/authorization-service/package.json index e2bd1a9b47d..df1fb3117a8 100644 --- a/ee/apps/authorization-service/package.json +++ b/ee/apps/authorization-service/package.json @@ -32,7 +32,7 @@ "moleculer": "^0.14.29", "mongodb": "^4.12.1", "nats": "^2.4.0", - "pino": "^8.4.2", + "pino": "^8.15.0", "polka": "^0.5.2" }, "devDependencies": { diff --git a/ee/apps/ddp-streamer/Dockerfile b/ee/apps/ddp-streamer/Dockerfile index f48ac24bfcc..83f1eb282c8 100644 --- a/ee/apps/ddp-streamer/Dockerfile +++ b/ee/apps/ddp-streamer/Dockerfile @@ -28,6 +28,9 @@ COPY ./packages/models/dist packages/models/dist COPY ./packages/instance-status/package.json packages/instance-status/package.json COPY ./packages/instance-status/dist packages/instance-status/dist +COPY ./packages/logger/package.json packages/logger/package.json +COPY ./packages/logger/dist packages/logger/dist + COPY ./ee/apps/${SERVICE}/dist . COPY ./package.json . diff --git a/ee/apps/ddp-streamer/package.json b/ee/apps/ddp-streamer/package.json index a773e20f8ed..e10d0f2dfa3 100644 --- a/ee/apps/ddp-streamer/package.json +++ b/ee/apps/ddp-streamer/package.json @@ -20,6 +20,7 @@ "@rocket.chat/core-typings": "workspace:^", "@rocket.chat/emitter": "next", "@rocket.chat/instance-status": "workspace:^", + "@rocket.chat/logger": "workspace:^", "@rocket.chat/model-typings": "workspace:^", "@rocket.chat/models": "workspace:^", "@rocket.chat/rest-typings": "workspace:^", @@ -36,7 +37,7 @@ "moleculer": "^0.14.29", "mongodb": "^4.12.1", "nats": "^2.4.0", - "pino": "^7.11.0", + "pino": "^8.15.0", "polka": "^0.5.2", "sharp": "^0.30.7", "underscore": "^1.13.6", diff --git a/ee/apps/ddp-streamer/src/Server.ts b/ee/apps/ddp-streamer/src/Server.ts index d4db1b8ad65..01c7c63511f 100644 --- a/ee/apps/ddp-streamer/src/Server.ts +++ b/ee/apps/ddp-streamer/src/Server.ts @@ -1,11 +1,11 @@ import { EventEmitter } from 'events'; import { MeteorService, isMeteorError, MeteorError } from '@rocket.chat/core-services'; +import { Logger } from '@rocket.chat/logger'; import ejson from 'ejson'; import { v1 as uuidv1 } from 'uuid'; import WebSocket from 'ws'; -import { Logger } from '../../../../apps/meteor/server/lib/logger/Logger'; import type { Client } from './Client'; import { Publication } from './Publication'; import { DDP_EVENTS } from './constants'; diff --git a/ee/apps/omnichannel-transcript/Dockerfile b/ee/apps/omnichannel-transcript/Dockerfile index 22bd2b7faf4..cc27cd7de9b 100644 --- a/ee/apps/omnichannel-transcript/Dockerfile +++ b/ee/apps/omnichannel-transcript/Dockerfile @@ -31,6 +31,9 @@ COPY ./ee/packages/pdf-worker/dist ee/packages/pdf-worker/dist COPY ./packages/tools/package.json packages/tools/package.json COPY ./packages/tools/dist packages/tools/dist +COPY ./packages/logger/package.json packages/logger/package.json +COPY ./packages/logger/dist packages/logger/dist + COPY ./ee/apps/${SERVICE}/dist . COPY ./package.json . diff --git a/ee/apps/omnichannel-transcript/package.json b/ee/apps/omnichannel-transcript/package.json index aa21d34f663..2229a5f518b 100644 --- a/ee/apps/omnichannel-transcript/package.json +++ b/ee/apps/omnichannel-transcript/package.json @@ -19,6 +19,7 @@ "@rocket.chat/core-services": "workspace:^", "@rocket.chat/core-typings": "workspace:^", "@rocket.chat/emitter": "next", + "@rocket.chat/logger": "workspace:^", "@rocket.chat/model-typings": "workspace:^", "@rocket.chat/models": "workspace:^", "@rocket.chat/omnichannel-services": "workspace:^", @@ -37,7 +38,7 @@ "mongo-message-queue": "^1.0.0", "mongodb": "^4.12.1", "nats": "^2.4.0", - "pino": "^8.4.2", + "pino": "^8.15.0", "polka": "^0.5.2" }, "devDependencies": { diff --git a/ee/apps/omnichannel-transcript/src/service.ts b/ee/apps/omnichannel-transcript/src/service.ts index 855596b37d6..14cbc5b8438 100644 --- a/ee/apps/omnichannel-transcript/src/service.ts +++ b/ee/apps/omnichannel-transcript/src/service.ts @@ -1,11 +1,11 @@ import { api } from '@rocket.chat/core-services'; +import { Logger } from '@rocket.chat/logger'; import type { Document } from 'mongodb'; import polka from 'polka'; import { registerServiceModels } from '../../../../apps/meteor/ee/server/lib/registerServiceModels'; import { Collections, getCollection, getConnection } from '../../../../apps/meteor/ee/server/services/mongo'; import { broker } from '../../../../apps/meteor/ee/server/startup/broker'; -import { Logger } from '../../../../apps/meteor/server/lib/logger/Logger'; const PORT = process.env.PORT || 3036; diff --git a/ee/apps/presence-service/package.json b/ee/apps/presence-service/package.json index 46ab613672a..d4419b0fada 100644 --- a/ee/apps/presence-service/package.json +++ b/ee/apps/presence-service/package.json @@ -32,7 +32,7 @@ "moleculer": "^0.14.29", "mongodb": "^4.12.1", "nats": "^2.4.0", - "pino": "^8.4.2", + "pino": "^8.15.0", "polka": "^0.5.2" }, "devDependencies": { diff --git a/ee/apps/queue-worker/Dockerfile b/ee/apps/queue-worker/Dockerfile index 22bd2b7faf4..cc27cd7de9b 100644 --- a/ee/apps/queue-worker/Dockerfile +++ b/ee/apps/queue-worker/Dockerfile @@ -31,6 +31,9 @@ COPY ./ee/packages/pdf-worker/dist ee/packages/pdf-worker/dist COPY ./packages/tools/package.json packages/tools/package.json COPY ./packages/tools/dist packages/tools/dist +COPY ./packages/logger/package.json packages/logger/package.json +COPY ./packages/logger/dist packages/logger/dist + COPY ./ee/apps/${SERVICE}/dist . COPY ./package.json . diff --git a/ee/apps/queue-worker/package.json b/ee/apps/queue-worker/package.json index bd237e16a60..a55f177596d 100644 --- a/ee/apps/queue-worker/package.json +++ b/ee/apps/queue-worker/package.json @@ -19,6 +19,7 @@ "@rocket.chat/core-services": "workspace:^", "@rocket.chat/core-typings": "workspace:^", "@rocket.chat/emitter": "next", + "@rocket.chat/logger": "workspace:^", "@rocket.chat/model-typings": "workspace:^", "@rocket.chat/models": "workspace:^", "@rocket.chat/omnichannel-services": "workspace:^", @@ -35,7 +36,7 @@ "mongo-message-queue": "^1.0.0", "mongodb": "^4.12.1", "nats": "^2.4.0", - "pino": "^8.4.2", + "pino": "^8.15.0", "polka": "^0.5.2" }, "devDependencies": { diff --git a/ee/apps/queue-worker/src/service.ts b/ee/apps/queue-worker/src/service.ts index 8897bf5b6e4..8583257a686 100644 --- a/ee/apps/queue-worker/src/service.ts +++ b/ee/apps/queue-worker/src/service.ts @@ -1,11 +1,11 @@ import { api } from '@rocket.chat/core-services'; +import { Logger } from '@rocket.chat/logger'; import type { Document } from 'mongodb'; import polka from 'polka'; import { registerServiceModels } from '../../../../apps/meteor/ee/server/lib/registerServiceModels'; import { Collections, getCollection, getConnection } from '../../../../apps/meteor/ee/server/services/mongo'; import { broker } from '../../../../apps/meteor/ee/server/startup/broker'; -import { Logger } from '../../../../apps/meteor/server/lib/logger/Logger'; const PORT = process.env.PORT || 3038; diff --git a/ee/apps/stream-hub-service/Dockerfile b/ee/apps/stream-hub-service/Dockerfile index e59c9f672f8..2bc54c25038 100644 --- a/ee/apps/stream-hub-service/Dockerfile +++ b/ee/apps/stream-hub-service/Dockerfile @@ -22,6 +22,9 @@ COPY ./packages/model-typings/dist packages/model-typings/dist COPY ./packages/models/package.json packages/models/package.json COPY ./packages/models/dist packages/models/dist +COPY ./packages/logger/package.json packages/logger/package.json +COPY ./packages/logger/dist packages/logger/dist + COPY ./ee/apps/${SERVICE}/dist . COPY ./package.json . diff --git a/ee/apps/stream-hub-service/package.json b/ee/apps/stream-hub-service/package.json index 70913ec5f53..27b9ee5b3b2 100644 --- a/ee/apps/stream-hub-service/package.json +++ b/ee/apps/stream-hub-service/package.json @@ -18,6 +18,7 @@ "@rocket.chat/core-services": "workspace:^", "@rocket.chat/core-typings": "workspace:^", "@rocket.chat/emitter": "next", + "@rocket.chat/logger": "workspace:^", "@rocket.chat/model-typings": "workspace:^", "@rocket.chat/models": "workspace:^", "@rocket.chat/string-helpers": "next", @@ -31,7 +32,7 @@ "moleculer": "^0.14.29", "mongodb": "^4.12.1", "nats": "^2.4.0", - "pino": "^8.4.2", + "pino": "^8.15.0", "polka": "^0.5.2" }, "devDependencies": { diff --git a/ee/apps/stream-hub-service/src/StreamHub.ts b/ee/apps/stream-hub-service/src/StreamHub.ts index 4aada3fec2f..a1316200ca5 100755 --- a/ee/apps/stream-hub-service/src/StreamHub.ts +++ b/ee/apps/stream-hub-service/src/StreamHub.ts @@ -1,8 +1,8 @@ import type { IServiceClass } from '@rocket.chat/core-services'; import { ServiceClass } from '@rocket.chat/core-services'; +import type { Logger } from '@rocket.chat/logger'; import type { DatabaseWatcher } from '../../../../apps/meteor/server/database/DatabaseWatcher'; -import type { Logger } from '../../../../apps/meteor/server/lib/logger/Logger'; import { initWatchers } from '../../../../apps/meteor/server/modules/watchers/watchers.module'; export class StreamHub extends ServiceClass implements IServiceClass { diff --git a/ee/apps/stream-hub-service/src/service.ts b/ee/apps/stream-hub-service/src/service.ts index d377c583a83..4975b5b306b 100755 --- a/ee/apps/stream-hub-service/src/service.ts +++ b/ee/apps/stream-hub-service/src/service.ts @@ -1,4 +1,5 @@ import { api } from '@rocket.chat/core-services'; +import { Logger } from '@rocket.chat/logger'; import type { Document } from 'mongodb'; import polka from 'polka'; @@ -6,7 +7,6 @@ import { registerServiceModels } from '../../../../apps/meteor/ee/server/lib/reg import { Collections, getCollection, getConnection } from '../../../../apps/meteor/ee/server/services/mongo'; import { broker } from '../../../../apps/meteor/ee/server/startup/broker'; import { DatabaseWatcher } from '../../../../apps/meteor/server/database/DatabaseWatcher'; -import { Logger } from '../../../../apps/meteor/server/lib/logger/Logger'; import { StreamHub } from './StreamHub'; const PORT = process.env.PORT || 3035; diff --git a/ee/packages/omnichannel-services/package.json b/ee/packages/omnichannel-services/package.json index bd6a3d48227..24a87e6a5eb 100644 --- a/ee/packages/omnichannel-services/package.json +++ b/ee/packages/omnichannel-services/package.json @@ -14,6 +14,7 @@ "@rocket.chat/core-services": "workspace:^", "@rocket.chat/core-typings": "workspace:^", "@rocket.chat/emitter": "next", + "@rocket.chat/logger": "workspace:^", "@rocket.chat/model-typings": "workspace:^", "@rocket.chat/models": "workspace:^", "@rocket.chat/pdf-worker": "workspace:^", @@ -29,7 +30,7 @@ "moment-timezone": "^0.5.43", "mongo-message-queue": "^1.0.0", "mongodb": "^4.12.1", - "pino": "^8.4.2" + "pino": "^8.15.0" }, "scripts": { "lint": "eslint --ext .js,.jsx,.ts,.tsx .", @@ -38,8 +39,8 @@ "build": "rm -rf dist && tsc -p tsconfig.json", "dev": "tsc -p tsconfig.json --watch --preserveWatchOutput" }, - "main": "./dist/ee/packages/omnichannel-services/src/index.js", - "typings": "./dist/ee/packages/omnichannel-services/src/index.d.ts", + "main": "./dist/index.js", + "typings": "./dist/index.d.ts", "files": [ "/dist" ] diff --git a/ee/packages/omnichannel-services/src/OmnichannelTranscript.ts b/ee/packages/omnichannel-services/src/OmnichannelTranscript.ts index 5edde5c998f..5438a95aa2d 100644 --- a/ee/packages/omnichannel-services/src/OmnichannelTranscript.ts +++ b/ee/packages/omnichannel-services/src/OmnichannelTranscript.ts @@ -13,14 +13,13 @@ import { import type { IOmnichannelTranscriptService } from '@rocket.chat/core-services'; import type { IMessage, IUser, IRoom, IUpload, ILivechatVisitor, ILivechatAgent } from '@rocket.chat/core-typings'; import { isQuoteAttachment, isFileAttachment, isFileImageAttachment } from '@rocket.chat/core-typings'; +import type { Logger } from '@rocket.chat/logger'; import { parse } from '@rocket.chat/message-parser'; import type { Root } from '@rocket.chat/message-parser'; import { LivechatRooms, Messages, Uploads, Users, LivechatVisitors } from '@rocket.chat/models'; import { PdfWorker } from '@rocket.chat/pdf-worker'; import { guessTimezone, guessTimezoneFromOffset, streamToBuffer } from '@rocket.chat/tools'; -import type { Logger } from '../../../../apps/meteor/server/lib/logger/Logger'; - const isPromiseRejectedResult = (result: any): result is PromiseRejectedResult => result.status === 'rejected'; type WorkDetails = { diff --git a/ee/packages/omnichannel-services/src/QueueWorker.ts b/ee/packages/omnichannel-services/src/QueueWorker.ts index 6de5810cb5d..141cb937f47 100644 --- a/ee/packages/omnichannel-services/src/QueueWorker.ts +++ b/ee/packages/omnichannel-services/src/QueueWorker.ts @@ -1,11 +1,10 @@ import { ServiceClass, api, License } from '@rocket.chat/core-services'; import type { IQueueWorkerService, HealthAggResult } from '@rocket.chat/core-services'; +import type { Logger } from '@rocket.chat/logger'; import type { Actions, ValidResult, Work } from 'mongo-message-queue'; import MessageQueue from 'mongo-message-queue'; import type { Db } from 'mongodb'; -import type { Logger } from '../../../../apps/meteor/server/lib/logger/Logger'; - export class QueueWorker extends ServiceClass implements IQueueWorkerService { protected name = 'queue-worker'; diff --git a/ee/packages/omnichannel-services/tsconfig.json b/ee/packages/omnichannel-services/tsconfig.json index 230b31ccf29..aa9f62519bb 100644 --- a/ee/packages/omnichannel-services/tsconfig.json +++ b/ee/packages/omnichannel-services/tsconfig.json @@ -2,6 +2,7 @@ "extends": "../../../tsconfig.base.server.json", "compilerOptions": { "outDir": "./dist", + "rootDir": "./src", "declaration": true, }, "include": ["./src/**/*", "../../../apps/meteor/definition/externals/meteor"], diff --git a/packages/logger/.eslintrc.json b/packages/logger/.eslintrc.json new file mode 100644 index 00000000000..a83aeda48e6 --- /dev/null +++ b/packages/logger/.eslintrc.json @@ -0,0 +1,4 @@ +{ + "extends": ["@rocket.chat/eslint-config"], + "ignorePatterns": ["**/dist"] +} diff --git a/packages/logger/package.json b/packages/logger/package.json new file mode 100644 index 00000000000..6056fb0f8df --- /dev/null +++ b/packages/logger/package.json @@ -0,0 +1,28 @@ +{ + "name": "@rocket.chat/logger", + "version": "0.0.1", + "private": true, + "devDependencies": { + "@types/jest": "~29.5.3", + "eslint": "~8.45.0", + "jest": "~29.6.1", + "ts-jest": "~29.0.5", + "typescript": "~5.1.6" + }, + "scripts": { + "lint": "eslint --ext .js,.jsx,.ts,.tsx .", + "lint:fix": "eslint --ext .js,.jsx,.ts,.tsx . --fix", + "test": "jest", + "build": "rm -rf dist && tsc -p tsconfig.json", + "dev": "tsc -p tsconfig.json --watch --preserveWatchOutput" + }, + "main": "./dist/index.js", + "typings": "./dist/index.d.ts", + "files": [ + "/dist" + ], + "dependencies": { + "@rocket.chat/emitter": "next", + "pino": "^8.15.0" + } +} diff --git a/apps/meteor/server/lib/logger/getPino.ts b/packages/logger/src/getPino.ts similarity index 100% rename from apps/meteor/server/lib/logger/getPino.ts rename to packages/logger/src/getPino.ts diff --git a/apps/meteor/server/lib/logger/Logger.ts b/packages/logger/src/index.ts similarity index 89% rename from apps/meteor/server/lib/logger/Logger.ts rename to packages/logger/src/index.ts index 1be3aa47ae1..e7f3059037e 100644 --- a/apps/meteor/server/lib/logger/Logger.ts +++ b/packages/logger/src/index.ts @@ -1,8 +1,11 @@ -import type { MainLogger } from './getPino'; -import { getPino } from './getPino'; +import { getPino, type MainLogger } from './getPino'; import type { LogLevelSetting } from './logLevel'; import { logLevel } from './logLevel'; +export * from './getPino'; +export * from './logLevel'; +export * from './logQueue'; + const getLevel = (level: LogLevelSetting): string => { switch (level) { case '0': @@ -18,7 +21,7 @@ const getLevel = (level: LogLevelSetting): string => { let defaultLevel = 'warn'; -logLevel.once('changed', (level) => { +logLevel.once('changed', (level: LogLevelSetting) => { defaultLevel = getLevel(level); }); @@ -28,7 +31,7 @@ export class Logger { constructor(loggerLabel: string) { this.logger = getPino(loggerLabel, defaultLevel); - logLevel.on('changed', (level) => { + logLevel.on('changed', (level: LogLevelSetting) => { this.logger.level = getLevel(level); }); } @@ -36,7 +39,7 @@ export class Logger { section(name: string): MainLogger { const child = this.logger.child({ section: name }) as MainLogger; - logLevel.on('changed', (level) => { + logLevel.on('changed', (level: LogLevelSetting) => { child.level = getLevel(level); }); diff --git a/apps/meteor/server/lib/logger/logLevel.ts b/packages/logger/src/logLevel.ts similarity index 100% rename from apps/meteor/server/lib/logger/logLevel.ts rename to packages/logger/src/logLevel.ts diff --git a/apps/meteor/server/lib/logger/logQueue.ts b/packages/logger/src/logQueue.ts similarity index 100% rename from apps/meteor/server/lib/logger/logQueue.ts rename to packages/logger/src/logQueue.ts diff --git a/packages/logger/tsconfig.json b/packages/logger/tsconfig.json new file mode 100644 index 00000000000..52e9dd8c497 --- /dev/null +++ b/packages/logger/tsconfig.json @@ -0,0 +1,9 @@ +{ + "extends": "../../tsconfig.base.server.json", + "compilerOptions": { + "declaration": true, + "rootDir": "./src", + "outDir": "./dist" + }, + "include": ["./src/**/*"] +} diff --git a/yarn.lock b/yarn.lock index bf32b97d91b..40a711bfb82 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7093,7 +7093,7 @@ __metadata: moleculer: ^0.14.29 mongodb: ^4.12.1 nats: ^2.4.0 - pino: ^8.4.2 + pino: ^8.15.0 polka: ^0.5.2 ts-node: ^10.9.1 typescript: ~5.1.6 @@ -7215,7 +7215,7 @@ __metadata: moleculer: ^0.14.29 mongodb: ^4.12.1 nats: ^2.4.0 - pino: ^8.4.2 + pino: ^8.15.0 polka: ^0.5.2 ts-node: ^10.9.1 typescript: ~5.1.6 @@ -7401,6 +7401,7 @@ __metadata: "@rocket.chat/emitter": next "@rocket.chat/eslint-config": "workspace:^" "@rocket.chat/instance-status": "workspace:^" + "@rocket.chat/logger": "workspace:^" "@rocket.chat/model-typings": "workspace:^" "@rocket.chat/models": "workspace:^" "@rocket.chat/rest-typings": "workspace:^" @@ -7426,7 +7427,7 @@ __metadata: moleculer: ^0.14.29 mongodb: ^4.12.1 nats: ^2.4.0 - pino: ^7.11.0 + pino: ^8.15.0 pino-pretty: ^7.6.1 polka: ^0.5.2 sharp: ^0.30.7 @@ -7889,6 +7890,20 @@ __metadata: languageName: unknown linkType: soft +"@rocket.chat/logger@workspace:^, @rocket.chat/logger@workspace:packages/logger": + version: 0.0.0-use.local + resolution: "@rocket.chat/logger@workspace:packages/logger" + dependencies: + "@rocket.chat/emitter": next + "@types/jest": ~29.5.3 + eslint: ~8.45.0 + jest: ~29.6.1 + pino: ^8.15.0 + ts-jest: ~29.0.5 + typescript: ~5.1.6 + languageName: unknown + linkType: soft + "@rocket.chat/logo@npm:next": version: 0.32.0-dev.356 resolution: "@rocket.chat/logo@npm:0.32.0-dev.356" @@ -7985,6 +8000,7 @@ __metadata: "@rocket.chat/layout": next "@rocket.chat/livechat": "workspace:^" "@rocket.chat/log-format": "workspace:^" + "@rocket.chat/logger": "workspace:^" "@rocket.chat/logo": next "@rocket.chat/memo": next "@rocket.chat/message-parser": next @@ -8235,7 +8251,7 @@ __metadata: path-to-regexp: ^6.2.1 pdfjs-dist: ^2.13.216 photoswipe: ^4.1.3 - pino: ^7.11.0 + pino: ^8.15.0 pino-pretty: ^7.6.1 playwright-qase-reporter: ^1.2.0-alpha.3 postcss: ~8.4.24 @@ -8369,6 +8385,7 @@ __metadata: "@rocket.chat/core-typings": "workspace:^" "@rocket.chat/emitter": next "@rocket.chat/eslint-config": "workspace:^" + "@rocket.chat/logger": "workspace:^" "@rocket.chat/model-typings": "workspace:^" "@rocket.chat/models": "workspace:^" "@rocket.chat/pdf-worker": "workspace:^" @@ -8387,7 +8404,7 @@ __metadata: moment-timezone: ^0.5.43 mongo-message-queue: ^1.0.0 mongodb: ^4.12.1 - pino: ^8.4.2 + pino: ^8.15.0 ts-jest: ~29.0.5 typescript: ~5.1.6 languageName: unknown @@ -8402,6 +8419,7 @@ __metadata: "@rocket.chat/core-typings": "workspace:^" "@rocket.chat/emitter": next "@rocket.chat/eslint-config": "workspace:^" + "@rocket.chat/logger": "workspace:^" "@rocket.chat/model-typings": "workspace:^" "@rocket.chat/models": "workspace:^" "@rocket.chat/omnichannel-services": "workspace:^" @@ -8424,7 +8442,7 @@ __metadata: mongo-message-queue: ^1.0.0 mongodb: ^4.12.1 nats: ^2.4.0 - pino: ^8.4.2 + pino: ^8.15.0 polka: ^0.5.2 ts-node: ^10.9.1 typescript: ~5.1.6 @@ -8519,7 +8537,7 @@ __metadata: moleculer: ^0.14.29 mongodb: ^4.12.1 nats: ^2.4.0 - pino: ^8.4.2 + pino: ^8.15.0 polka: ^0.5.2 ts-node: ^10.9.1 typescript: ~5.1.6 @@ -8566,6 +8584,7 @@ __metadata: "@rocket.chat/core-typings": "workspace:^" "@rocket.chat/emitter": next "@rocket.chat/eslint-config": "workspace:^" + "@rocket.chat/logger": "workspace:^" "@rocket.chat/model-typings": "workspace:^" "@rocket.chat/models": "workspace:^" "@rocket.chat/omnichannel-services": "workspace:^" @@ -8585,7 +8604,7 @@ __metadata: mongo-message-queue: ^1.0.0 mongodb: ^4.12.1 nats: ^2.4.0 - pino: ^8.4.2 + pino: ^8.15.0 polka: ^0.5.2 ts-node: ^10.9.1 typescript: ~5.1.6 @@ -8704,6 +8723,7 @@ __metadata: "@rocket.chat/core-typings": "workspace:^" "@rocket.chat/emitter": next "@rocket.chat/eslint-config": "workspace:^" + "@rocket.chat/logger": "workspace:^" "@rocket.chat/model-typings": "workspace:^" "@rocket.chat/models": "workspace:^" "@rocket.chat/rest-typings": "workspace:^" @@ -8722,7 +8742,7 @@ __metadata: moleculer: ^0.14.29 mongodb: ^4.12.1 nats: ^2.4.0 - pino: ^8.4.2 + pino: ^8.15.0 polka: ^0.5.2 ts-node: ^10.9.1 typescript: ~5.1.6 @@ -20214,7 +20234,7 @@ __metadata: languageName: node linkType: hard -"fast-redact@npm:^3.0.0, fast-redact@npm:^3.1.1": +"fast-redact@npm:^3.1.1": version: 3.1.2 resolution: "fast-redact@npm:3.1.2" checksum: a30eb6b6830333ab213e0def55f46453ca777544dbd3a883016cb590a0eeb95e6fdf546553c1a13d509896bfba889b789991160a6d0996ceb19fce0a02e8b753 @@ -29876,7 +29896,7 @@ __metadata: languageName: node linkType: hard -"pino-abstract-transport@npm:^0.5.0, pino-abstract-transport@npm:v0.5.0": +"pino-abstract-transport@npm:^0.5.0": version: 0.5.0 resolution: "pino-abstract-transport@npm:0.5.0" dependencies: @@ -29919,13 +29939,6 @@ __metadata: languageName: node linkType: hard -"pino-std-serializers@npm:^4.0.0": - version: 4.0.0 - resolution: "pino-std-serializers@npm:4.0.0" - checksum: 89d487729b58c9d3273a0ee851ead068d6d2e2ccc1af8e1c1d28f1b3442423679bec7ec04d9a2aba36f94f335e82be9f4de19dc4fbc161e71c136aaa15b85ad3 - languageName: node - linkType: hard - "pino-std-serializers@npm:^6.0.0": version: 6.0.0 resolution: "pino-std-serializers@npm:6.0.0" @@ -29933,30 +29946,9 @@ __metadata: languageName: node linkType: hard -"pino@npm:^7.11.0": - version: 7.11.0 - resolution: "pino@npm:7.11.0" - dependencies: - atomic-sleep: ^1.0.0 - fast-redact: ^3.0.0 - on-exit-leak-free: ^0.2.0 - pino-abstract-transport: v0.5.0 - pino-std-serializers: ^4.0.0 - process-warning: ^1.0.0 - quick-format-unescaped: ^4.0.3 - real-require: ^0.1.0 - safe-stable-stringify: ^2.1.0 - sonic-boom: ^2.2.1 - thread-stream: ^0.15.1 - bin: - pino: bin.js - checksum: b919e7dbe41de978bb050dcef94fd687c012eb78d344a18f75f04ce180d5810fc162be1f136722d70cd005ed05832c4023a38b9acbc1076ae63c9f5ec5ca515c - languageName: node - linkType: hard - -"pino@npm:^8.4.2": - version: 8.4.2 - resolution: "pino@npm:8.4.2" +"pino@npm:^8.15.0": + version: 8.15.0 + resolution: "pino@npm:8.15.0" dependencies: atomic-sleep: ^1.0.0 fast-redact: ^3.1.1 @@ -29971,7 +29963,7 @@ __metadata: thread-stream: ^2.0.0 bin: pino: bin.js - checksum: 870ee673d54a8e0b03766f39800e9805023f7f5efbbd33f61142febcdc556e24463d1d2af182c9b504e44ffa82bf692d67e4c284a64ea2cf96e166a13d77a0bc + checksum: 9a54d0757f0256201fad01346be1c18b0a4378704fa383df867189da12151d664d2bd18b1e53df70633fbff6c90fd3175228c0c971eaaa734939709cc1a0005b languageName: node linkType: hard @@ -31132,13 +31124,6 @@ __metadata: languageName: node linkType: hard -"process-warning@npm:^1.0.0": - version: 1.0.0 - resolution: "process-warning@npm:1.0.0" - checksum: c708a03241deec3cabaeee39c4f9ee8c4d71f1c5ef9b746c8252cdb952a6059068cfcdaf348399775244cbc441b6ae5e26a9c87ed371f88335d84f26d19180f9 - languageName: node - linkType: hard - "process-warning@npm:^2.0.0": version: 2.0.0 resolution: "process-warning@npm:2.0.0" @@ -32486,13 +32471,6 @@ __metadata: languageName: node linkType: hard -"real-require@npm:^0.1.0": - version: 0.1.0 - resolution: "real-require@npm:0.1.0" - checksum: 96745583ed4f82cd5c6a6af012fd1d3c6fc2f13ae1bcff1a3c4f8094696013a1a07c82c5aa66a403d7d4f84949fc2203bc927c7ad120caad125941ca2d7e5e8e - languageName: node - linkType: hard - "real-require@npm:^0.2.0": version: 0.2.0 resolution: "real-require@npm:0.2.0" @@ -33286,7 +33264,7 @@ __metadata: mongodb: ^4.12.1 nats: ^2.6.1 npm-run-all: ^4.1.5 - pino: ^7.11.0 + pino: ^8.15.0 pino-pretty: ^7.6.1 pm2: ^5.2.0 sodium-native: ^3.3.0 @@ -33408,7 +33386,7 @@ __metadata: languageName: node linkType: hard -"safe-stable-stringify@npm:^2.1.0, safe-stable-stringify@npm:^2.3.1": +"safe-stable-stringify@npm:^2.3.1": version: 2.3.1 resolution: "safe-stable-stringify@npm:2.3.1" checksum: a0a0bad0294c3e2a9d1bf3cf2b1096dfb83c162d09a5e4891e488cce082120bd69161d2a92aae7fc48255290f17700decae9c89a07fe139794e61b5c8b411377 @@ -34327,7 +34305,7 @@ __metadata: languageName: node linkType: hard -"sonic-boom@npm:^2.2.0, sonic-boom@npm:^2.2.1": +"sonic-boom@npm:^2.2.0": version: 2.6.0 resolution: "sonic-boom@npm:2.6.0" dependencies: @@ -35932,15 +35910,6 @@ __metadata: languageName: node linkType: hard -"thread-stream@npm:^0.15.1": - version: 0.15.2 - resolution: "thread-stream@npm:0.15.2" - dependencies: - real-require: ^0.1.0 - checksum: 0547795a8f357ba1ac0dba29c71f965182e29e21752951a04a7167515ee37524bfba6c410f31e65a01a8d3e5b93400b812889aa09523e38ce4d744c894ffa6c0 - languageName: node - linkType: hard - "thread-stream@npm:^2.0.0": version: 2.1.0 resolution: "thread-stream@npm:2.1.0"