diff --git a/tdrive/backend/node/package-lock.json b/tdrive/backend/node/package-lock.json index e1b9abcf..9b3db99d 100644 --- a/tdrive/backend/node/package-lock.json +++ b/tdrive/backend/node/package-lock.json @@ -70,8 +70,7 @@ "pdf2pic": "^2.1.4", "pg": "^8.11.3", "pg-pool": "^3.6.1", - "pino": "^6.8.0", - "pino-std-serializers": "^6.1.0", + "pino": "^9.5.0", "probe-image-size": "^7.2.3", "pump": "^3.0.0", "random-useragent": "^0.5.0", @@ -110,6 +109,7 @@ "@types/nodemailer": "^6.4.14", "@types/pdf-image": "^2.0.1", "@types/pg-pool": "^2.0.6", + "@types/pino": "^7.0.5", "@types/pump": "^1.1.1", "@types/random-useragent": "^0.3.1", "@types/socket.io-client": "^1.4.36", @@ -2898,6 +2898,16 @@ "@types/pg": "*" } }, + "node_modules/@types/pino": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/@types/pino/-/pino-7.0.5.tgz", + "integrity": "sha512-wKoab31pknvILkxAF8ss+v9iNyhw5Iu/0jLtRkUD74cNfOOLJNnqfFKAv0r7wVaTQxRZtWrMpGfShwwBjOcgcg==", + "deprecated": "This is a stub types definition. pino provides its own type definitions, so you do not need this installed.", + "dev": true, + "dependencies": { + "pino": "*" + } + }, "node_modules/@types/pump": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/@types/pump/-/pump-1.1.3.tgz", @@ -3259,6 +3269,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "dev": true, "dependencies": { "event-target-shim": "^5.0.0" }, @@ -5842,6 +5853,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "dev": true, "engines": { "node": ">=6" } @@ -5850,6 +5862,7 @@ "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, "engines": { "node": ">=0.8.x" } @@ -6193,40 +6206,6 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, - "node_modules/fastify/node_modules/pino": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-9.1.0.tgz", - "integrity": "sha512-qUcgfrlyOtjwhNLdbhoL7NR4NkHjzykAPw0V2QLFbvu/zss29h4NkRnibyFzBrNCbzCOY3WZ9hhKSwfOkNggYA==", - "dependencies": { - "atomic-sleep": "^1.0.0", - "fast-redact": "^3.1.1", - "on-exit-leak-free": "^2.1.0", - "pino-abstract-transport": "^1.2.0", - "pino-std-serializers": "^7.0.0", - "process-warning": "^3.0.0", - "quick-format-unescaped": "^4.0.3", - "real-require": "^0.2.0", - "safe-stable-stringify": "^2.3.1", - "sonic-boom": "^4.0.1", - "thread-stream": "^3.0.0" - }, - "bin": { - "pino": "bin.js" - } - }, - "node_modules/fastify/node_modules/pino-std-serializers": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-7.0.0.tgz", - "integrity": "sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA==" - }, - "node_modules/fastify/node_modules/sonic-boom": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.0.1.tgz", - "integrity": "sha512-hTSD/6JMLyT4r9zeof6UtuBDpjJ9sO08/nmS5djaA9eozT9oOlNdpXSnzcgj4FTqpk3nkLrs61l4gip9r1HCrQ==", - "dependencies": { - "atomic-sleep": "^1.0.0" - } - }, "node_modules/fastparallel": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/fastparallel/-/fastparallel-2.4.1.tgz", @@ -6337,11 +6316,6 @@ "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/flatstr": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/flatstr/-/flatstr-1.0.12.tgz", - "integrity": "sha512-4zPxDyhCyiN2wIAtSLI6gc82/EjqZc1onI4Mz/l0pWrAlsSfYH/2ZIcU+e3oA2wDwbzIWNKwa23F8rh6+DRWkw==" - }, "node_modules/flatted": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", @@ -10180,17 +10154,21 @@ } }, "node_modules/pino": { - "version": "6.14.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-6.14.0.tgz", - "integrity": "sha512-iuhEDel3Z3hF9Jfe44DPXR8l07bhjuFY3GMHIXbjnY9XcafbyDDwl2sN2vw2GjMPf5Nkoe+OFao7ffn9SXaKDg==", + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/pino/-/pino-9.5.0.tgz", + "integrity": "sha512-xSEmD4pLnV54t0NOUN16yCl7RIB1c5UUOse5HSyEXtBp+FgFQyPeDutc+Q2ZO7/22vImV7VfEjH/1zV2QuqvYw==", "dependencies": { - "fast-redact": "^3.0.0", - "fast-safe-stringify": "^2.0.8", - "flatstr": "^1.0.12", - "pino-std-serializers": "^3.1.0", - "process-warning": "^1.0.0", + "atomic-sleep": "^1.0.0", + "fast-redact": "^3.1.1", + "on-exit-leak-free": "^2.1.0", + "pino-abstract-transport": "^2.0.0", + "pino-std-serializers": "^7.0.0", + "process-warning": "^4.0.0", "quick-format-unescaped": "^4.0.3", - "sonic-boom": "^1.0.2" + "real-require": "^0.2.0", + "safe-stable-stringify": "^2.3.1", + "sonic-boom": "^4.0.1", + "thread-stream": "^3.0.0" }, "bin": { "pino": "bin.js" @@ -10200,6 +10178,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-1.2.0.tgz", "integrity": "sha512-Guhh8EZfPCfH+PMXAb6rKOjGQEoy0xlAIn+irODG5kgfYV+BQ0rGYYWTIel3P5mmyXqkYkPmdIkywsn6QKUR1Q==", + "dev": true, "dependencies": { "readable-stream": "^4.0.0", "split2": "^4.0.0" @@ -10209,6 +10188,7 @@ "version": "6.0.3", "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "dev": true, "funding": [ { "type": "github", @@ -10232,6 +10212,7 @@ "version": "4.5.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", + "dev": true, "dependencies": { "abort-controller": "^3.0.0", "buffer": "^6.0.3", @@ -10247,6 +10228,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, "dependencies": { "safe-buffer": "~5.2.0" } @@ -10335,19 +10317,22 @@ } }, "node_modules/pino-std-serializers": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.2.2.tgz", - "integrity": "sha512-cHjPPsE+vhj/tnhCy/wiMh3M3z3h/j15zHQX+S9GkTBgqJuTuJzYJ4gUyACLhDaJ7kk9ba9iRDmbH2tJU03OiA==" + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-7.0.0.tgz", + "integrity": "sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA==" }, - "node_modules/pino/node_modules/pino-std-serializers": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-3.2.0.tgz", - "integrity": "sha512-EqX4pwDPrt3MuOAAUBMU0Tk5kR/YcCM5fNPEzgCO2zJ5HfX0vbiH9HbJglnyeQsN96Kznae6MWD47pZB5avTrg==" + "node_modules/pino/node_modules/pino-abstract-transport": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-2.0.0.tgz", + "integrity": "sha512-F63x5tizV6WCh4R6RHyi2Ml+M70DNRXt/+HANowMflpgGFMAym/VKm6G7ZOQRjqN7XbGxK1Lg9t6ZrtzOaivMw==", + "dependencies": { + "split2": "^4.0.0" + } }, "node_modules/pino/node_modules/process-warning": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-1.0.0.tgz", - "integrity": "sha512-du4wfLyj4yCZq1VupnVSZmRsPJsNuxoDQFdCFHLaYiEbFBD7QE0a+I4D7hOxrVnh78QE/YipFAj9lXHiXocV+Q==" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-4.0.0.tgz", + "integrity": "sha512-/MyYDxttz7DfGMMHiysAsFE4qF+pQYAA8ziO/3NcRVrQ5fSk+Mns4QZA/oRPFzvcqNoVJXQNWNAsdwBXLUkQKw==" }, "node_modules/pirates": { "version": "4.0.6", @@ -10551,6 +10536,7 @@ "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "dev": true, "engines": { "node": ">= 0.6.0" } @@ -11498,12 +11484,11 @@ } }, "node_modules/sonic-boom": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-1.4.1.tgz", - "integrity": "sha512-LRHh/A8tpW7ru89lrlkU4AszXt1dbwSjVWguGrmlxE7tawVmDBlI1PILMkXAxJTwqhgsEeTHzj36D5CmHgQmNg==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.2.0.tgz", + "integrity": "sha512-INb7TM37/mAcsGmc9hyyI6+QR3rR1zVRu36B0NeGXKnOOLiZOfER5SA+N7X7k3yUYRzLWafduTDvJAfDswwEww==", "dependencies": { - "atomic-sleep": "^1.0.0", - "flatstr": "^1.0.12" + "atomic-sleep": "^1.0.0" } }, "node_modules/sort-keys": { diff --git a/tdrive/backend/node/package.json b/tdrive/backend/node/package.json index 42673e2f..6a389c4d 100644 --- a/tdrive/backend/node/package.json +++ b/tdrive/backend/node/package.json @@ -77,6 +77,7 @@ "@types/nodemailer": "^6.4.14", "@types/pdf-image": "^2.0.1", "@types/pg-pool": "^2.0.6", + "@types/pino": "^7.0.5", "@types/pump": "^1.1.1", "@types/random-useragent": "^0.3.1", "@types/socket.io-client": "^1.4.36", @@ -166,8 +167,7 @@ "pdf2pic": "^2.1.4", "pg": "^8.11.3", "pg-pool": "^3.6.1", - "pino": "^6.8.0", - "pino-std-serializers": "^6.1.0", + "pino": "^9.5.0", "probe-image-size": "^7.2.3", "pump": "^3.0.0", "random-useragent": "^0.5.0", diff --git a/tdrive/backend/node/src/core/platform/framework/logger.ts b/tdrive/backend/node/src/core/platform/framework/logger.ts index cbfc8b42..cdc8ea68 100644 --- a/tdrive/backend/node/src/core/platform/framework/logger.ts +++ b/tdrive/backend/node/src/core/platform/framework/logger.ts @@ -12,6 +12,12 @@ export const logger = pino({ mixin() { return executionStorage.getStore() ? executionStorage.getStore() : {}; }, + formatters: { + level(label: string) { + return { level: label.toUpperCase() }; + }, + }, + serializers: pino.stdSerializers, }); export const getLogger = (name?: string): TdriveLogger => diff --git a/tdrive/backend/node/src/core/platform/framework/utils/component-utils.ts b/tdrive/backend/node/src/core/platform/framework/utils/component-utils.ts index 99775cf9..b7e4366a 100644 --- a/tdrive/backend/node/src/core/platform/framework/utils/component-utils.ts +++ b/tdrive/backend/node/src/core/platform/framework/utils/component-utils.ts @@ -28,7 +28,7 @@ export async function buildDependenciesTree( `The component dependency ${dependencyName} has not been found for component ${name}`, ); } else { - console.warn( + logger.warn( `(warning) The component dependency ${dependencyName} has not been found for component ${name} it will be imported asynchronously`, ); diff --git a/tdrive/backend/node/src/core/platform/services/search/adapters/mongosearch/index.ts b/tdrive/backend/node/src/core/platform/services/search/adapters/mongosearch/index.ts index f48b2a63..263eb610 100644 --- a/tdrive/backend/node/src/core/platform/services/search/adapters/mongosearch/index.ts +++ b/tdrive/backend/node/src/core/platform/services/search/adapters/mongosearch/index.ts @@ -209,7 +209,7 @@ export default class MongoSearch extends SearchAdapter implements SearchAdapterI const { query, sort, project } = buildSearchQuery(entityType, filters, options); logger.info(`Search query: ${JSON.stringify(query)}`); - console.log(query); + logger.info(query); const sortMapped: any = sort ? Object.fromEntries( diff --git a/tdrive/backend/node/src/core/platform/services/search/adapters/mongosearch/search.ts b/tdrive/backend/node/src/core/platform/services/search/adapters/mongosearch/search.ts index 4db7af22..1d68fcb6 100644 --- a/tdrive/backend/node/src/core/platform/services/search/adapters/mongosearch/search.ts +++ b/tdrive/backend/node/src/core/platform/services/search/adapters/mongosearch/search.ts @@ -1,6 +1,7 @@ import { buildSelectQuery } from "../../../database/services/orm/connectors/mongodb/query-builder"; import { EntityTarget, FindFilter, FindOptions, getEntityDefinition } from "../../api"; import { asciiFold } from "../utils"; +import { logger } from "../../../../framework"; export function buildSearchQuery( entityType: EntityTarget, @@ -15,7 +16,7 @@ export function buildSearchQuery( try { query = buildSelectQuery(entityType, filters, options); } catch (e) { - console.log(e); + logger.info(e); } let sort: any = {}; diff --git a/tdrive/backend/node/src/core/platform/services/tracker/adapters/segment.ts b/tdrive/backend/node/src/core/platform/services/tracker/adapters/segment.ts index 1b6dc834..5a216607 100644 --- a/tdrive/backend/node/src/core/platform/services/tracker/adapters/segment.ts +++ b/tdrive/backend/node/src/core/platform/services/tracker/adapters/segment.ts @@ -1,6 +1,7 @@ import Analytics, { IdentifyParams, TrackParams } from "@segment/analytics-node"; import { Analytics as AnalyticsAbtract } from "./types"; import axios, { AxiosInstance } from "axios"; +import { logger } from "../../../framework/logger"; export default class Segment implements AnalyticsAbtract { protected version = "5.0.0"; //Segment analytics lib version @@ -33,7 +34,7 @@ export default class Segment implements AnalyticsAbtract { try { this.analytics.identify(message as IdentifyParams, callback); } catch (err) { - console.error(err); + logger.error(err); } } @@ -47,7 +48,7 @@ export default class Segment implements AnalyticsAbtract { try { this.analytics.track(message as TrackParams, callback); } catch (err) { - console.error(err); + logger.error(err); } } diff --git a/tdrive/backend/node/src/core/platform/services/webserver/error.ts b/tdrive/backend/node/src/core/platform/services/webserver/error.ts index b13bbaa0..28e7bfa6 100644 --- a/tdrive/backend/node/src/core/platform/services/webserver/error.ts +++ b/tdrive/backend/node/src/core/platform/services/webserver/error.ts @@ -1,8 +1,9 @@ import { FastifyInstance } from "fastify"; +import { logger } from "../../framework/logger"; function serverErrorHandler(server: FastifyInstance): void { server.setErrorHandler(async (err, request, reply) => { - console.error(`Got ${reply.statusCode} error on request ${request.id} : `, err); + logger.error(`Got ${reply.statusCode} error on request ${request.id} : `, err); server.log.debug(`Got ${reply.statusCode} error on request ${request.id} : ${err.toString()}`); await reply.send( reply.statusCode == 500 diff --git a/tdrive/backend/node/src/services/applications/services/company-applications.ts b/tdrive/backend/node/src/services/applications/services/company-applications.ts index e66f2791..e8e08263 100644 --- a/tdrive/backend/node/src/services/applications/services/company-applications.ts +++ b/tdrive/backend/node/src/services/applications/services/company-applications.ts @@ -1,4 +1,4 @@ -import { Initializable, TdriveServiceProvider } from "../../../core/platform/framework"; +import { Initializable, logger, TdriveServiceProvider } from "../../../core/platform/framework"; import { ListResult, Paginable } from "../../../core/platform/framework/api/crud-service"; import gr from "../../global-resolver"; import { @@ -39,7 +39,7 @@ export class CompanyApplicationServiceImpl implements TdriveServiceProvider, Ini app.application.api = null; return app; } catch (err) { - console.error(err); + logger.error(err); return null; } } diff --git a/tdrive/backend/node/src/services/documents/services/access-check.ts b/tdrive/backend/node/src/services/documents/services/access-check.ts index 07714c7d..78096c52 100644 --- a/tdrive/backend/node/src/services/documents/services/access-check.ts +++ b/tdrive/backend/node/src/services/documents/services/access-check.ts @@ -285,7 +285,7 @@ export const getAccessLevel = async ( ); if (matchingChannel) return matchingChannel.level; } catch (e) { - console.log(e); + logger.info(e); } } @@ -406,7 +406,7 @@ export const getSharedByUser = ( return getGrantorAndThrowIfEmpty(entity); } if (entity.type === "company" && entity.id === context.company.id && entity.level != "none") { - console.log("company", entity); + logger.info("company", entity); return getGrantorAndThrowIfEmpty(entity); } } diff --git a/tdrive/backend/node/src/services/documents/services/engine/extract-keywords.ts b/tdrive/backend/node/src/services/documents/services/engine/extract-keywords.ts index e1c8c844..4247b24b 100644 --- a/tdrive/backend/node/src/services/documents/services/engine/extract-keywords.ts +++ b/tdrive/backend/node/src/services/documents/services/engine/extract-keywords.ts @@ -47,7 +47,7 @@ export class DocumentsProcessor ); content_keywords = await getKeywordsOfFile(storedFile.mime, storedFile.name, storedFile.file); } catch (error) { - console.debug(error); + logger.debug(error); logger.error({ error: `${error}` }, "Failed to generate content keywords"); } return { content_keywords, item: message.item }; diff --git a/tdrive/backend/node/src/services/documents/services/index.ts b/tdrive/backend/node/src/services/documents/services/index.ts index cdc65508..8f3b840d 100644 --- a/tdrive/backend/node/src/services/documents/services/index.ts +++ b/tdrive/backend/node/src/services/documents/services/index.ts @@ -470,7 +470,7 @@ export class DocumentsService { } } } catch (error) { - console.error("🚀🚀 error:", error); + logger.error(error, "🚀🚀 error:"); } await this.repository.save(driveItem); diff --git a/tdrive/backend/node/src/services/files/web/controllers/files.ts b/tdrive/backend/node/src/services/files/web/controllers/files.ts index 587dd0c4..0bb0801f 100644 --- a/tdrive/backend/node/src/services/files/web/controllers/files.ts +++ b/tdrive/backend/node/src/services/files/web/controllers/files.ts @@ -6,6 +6,7 @@ import { UploadOptions } from "../../types"; import { PublicFile } from "../../entities/file"; import gr from "../../../global-resolver"; import { formatAttachmentContentDispositionHeader } from "../../utils"; +import { logger } from "../../../../core/platform/framework"; export class FileController { async save( @@ -54,7 +55,7 @@ export class FileController { response.type(data.mime); return response.send(data.file); } catch (e) { - console.log("!!!" + e); + logger.info(e); throw e; } } @@ -80,7 +81,7 @@ export class FileController { response.send(data.file); return response; } catch (err) { - console.log(err); + logger.error(err); response.statusCode = 500; response.send(""); } diff --git a/tdrive/backend/node/src/services/previews/services/files/processing/pdf.ts b/tdrive/backend/node/src/services/previews/services/files/processing/pdf.ts index 4ce052af..6d99acc7 100644 --- a/tdrive/backend/node/src/services/previews/services/files/processing/pdf.ts +++ b/tdrive/backend/node/src/services/previews/services/files/processing/pdf.ts @@ -1,6 +1,9 @@ import { fromPath } from "pdf2pic"; import { mkdirSync } from "fs"; import { cleanFiles, getTmpFile } from "../../../../../utils/files"; +import { logger } from "../../../../../core/platform/framework"; + +class PDFConversionError extends Error {} export async function convertFromPdf( inputPath: string, @@ -33,11 +36,12 @@ export async function convertFromPdf( //Just no more page to convert } } catch (error) { - console.error(error); + const pdfConversionError = new PDFConversionError("Can't convert file with pdf-image.", { cause: error }); + logger.error(pdfConversionError); for (const file of pages) { cleanFiles([file]); } - throw Error("Can't convert file with pdf-image."); + throw pdfConversionError; } return { output: pages, done: true }; } diff --git a/tdrive/backend/node/src/services/user/utils.ts b/tdrive/backend/node/src/services/user/utils.ts index 65f46ae4..92605cc2 100644 --- a/tdrive/backend/node/src/services/user/utils.ts +++ b/tdrive/backend/node/src/services/user/utils.ts @@ -7,6 +7,7 @@ import { CompanyStatsObject, CompanyUserObject, } from "./web/types"; +import { logger } from "../../core/platform/framework"; export function formatCompany( companyEntity: Company, @@ -75,6 +76,8 @@ export function formatCompany( }, ); + logger.info("🚀🚀 res.plan.features: ", res.plan.features); + return res; } diff --git a/tdrive/backend/node/src/services/workspaces/services/workspace.ts b/tdrive/backend/node/src/services/workspaces/services/workspace.ts index 5353c73a..a2fd763c 100644 --- a/tdrive/backend/node/src/services/workspaces/services/workspace.ts +++ b/tdrive/backend/node/src/services/workspaces/services/workspace.ts @@ -490,7 +490,7 @@ export class WorkspaceServiceImpl implements TdriveServiceProvider, Initializabl } } } catch (err) { - console.log(err); + logger.warn(err); } } } diff --git a/tdrive/backend/node/src/services/workspaces/web/controllers/workspace-users.ts b/tdrive/backend/node/src/services/workspaces/web/controllers/workspace-users.ts index 9a01f9e2..bfc214ff 100644 --- a/tdrive/backend/node/src/services/workspaces/web/controllers/workspace-users.ts +++ b/tdrive/backend/node/src/services/workspaces/web/controllers/workspace-users.ts @@ -35,6 +35,7 @@ import WorkspacePendingUser from "../../entities/workspace_pending_users"; import { ConsoleCompany, CreateConsoleUser } from "../../../console/types"; import { hasCompanyAdminLevel } from "../../../../utils/company"; import gr from "../../../global-resolver"; +import { logger } from "../../../../core/platform/framework"; export class WorkspaceUsersCrudController implements @@ -525,7 +526,7 @@ export class WorkspaceUsersCrudController return { status: "success" }; } catch (e) { - console.error(e); + logger.warn(e); return { status: "error", }; diff --git a/tdrive/backend/node/src/utils/files.ts b/tdrive/backend/node/src/utils/files.ts index 2a24385c..f4c9c337 100644 --- a/tdrive/backend/node/src/utils/files.ts +++ b/tdrive/backend/node/src/utils/files.ts @@ -1,6 +1,7 @@ import { mkdirSync, existsSync, promises as fsPromise, createWriteStream, readFileSync } from "fs"; import { Readable } from "stream"; import { v4 as uuidv4 } from "uuid"; +import { logger } from "../core/platform/framework"; const { unlink } = fsPromise; @@ -50,7 +51,7 @@ export const writeToTemporaryFile = async (input: Readable, extension: string): return temporaryFilePath; } catch (error) { - console.debug(error); + logger.debug(error); throw Error(error); } diff --git a/tdrive/backend/node/yarn.lock b/tdrive/backend/node/yarn.lock index a89e4488..e8edb3ad 100644 --- a/tdrive/backend/node/yarn.lock +++ b/tdrive/backend/node/yarn.lock @@ -1416,6 +1416,13 @@ pg-protocol "*" pg-types "^4.0.1" +"@types/pino@^7.0.5": + version "7.0.5" + resolved "https://registry.npmjs.org/@types/pino/-/pino-7.0.5.tgz" + integrity sha512-wKoab31pknvILkxAF8ss+v9iNyhw5Iu/0jLtRkUD74cNfOOLJNnqfFKAv0r7wVaTQxRZtWrMpGfShwwBjOcgcg== + dependencies: + pino "*" + "@types/pump@^1.1.1": version "1.1.3" resolved "https://registry.npmjs.org/@types/pump/-/pump-1.1.3.tgz" @@ -3316,12 +3323,12 @@ fast-querystring@^1.0.0: dependencies: fast-decode-uri-component "^1.0.1" -fast-redact@^3.0.0, fast-redact@^3.1.1: +fast-redact@^3.1.1: version "3.5.0" resolved "https://registry.npmjs.org/fast-redact/-/fast-redact-3.5.0.tgz" integrity sha512-dwsoQlS7h9hMeYUq1W++23NDcBLV4KqONnITDV9DjfS3q1SgDGVrBdvvTLUotWtPSD7asWDV9/CmsZPy8Hf70A== -fast-safe-stringify@^2.0.8, fast-safe-stringify@^2.1.1, fast-safe-stringify@~2.1.0: +fast-safe-stringify@^2.1.1, fast-safe-stringify@~2.1.0: version "2.1.1" resolved "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz" integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== @@ -3486,11 +3493,6 @@ flat-cache@^3.0.4: keyv "^4.5.3" rimraf "^3.0.2" -flatstr@^1.0.12: - version "1.0.12" - resolved "https://registry.npmjs.org/flatstr/-/flatstr-1.0.12.tgz" - integrity sha512-4zPxDyhCyiN2wIAtSLI6gc82/EjqZc1onI4Mz/l0pWrAlsSfYH/2ZIcU+e3oA2wDwbzIWNKwa23F8rh6+DRWkw== - flatted@^3.2.9: version "3.3.1" resolved "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz" @@ -5863,7 +5865,7 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== -pino-abstract-transport@^1.0.0, pino-abstract-transport@^1.2.0: +pino-abstract-transport@^1.0.0: version "1.2.0" resolved "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-1.2.0.tgz" integrity sha512-Guhh8EZfPCfH+PMXAb6rKOjGQEoy0xlAIn+irODG5kgfYV+BQ0rGYYWTIel3P5mmyXqkYkPmdIkywsn6QKUR1Q== @@ -5871,6 +5873,13 @@ pino-abstract-transport@^1.0.0, pino-abstract-transport@^1.2.0: readable-stream "^4.0.0" split2 "^4.0.0" +pino-abstract-transport@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-2.0.0.tgz" + integrity sha512-F63x5tizV6WCh4R6RHyi2Ml+M70DNRXt/+HANowMflpgGFMAym/VKm6G7ZOQRjqN7XbGxK1Lg9t6ZrtzOaivMw== + dependencies: + split2 "^4.0.0" + pino-pretty@^10.0.0: version "10.3.1" resolved "https://registry.npmjs.org/pino-pretty/-/pino-pretty-10.3.1.tgz" @@ -5891,45 +5900,22 @@ pino-pretty@^10.0.0: sonic-boom "^3.0.0" strip-json-comments "^3.1.1" -pino-std-serializers@^3.1.0: - version "3.2.0" - resolved "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-3.2.0.tgz" - integrity sha512-EqX4pwDPrt3MuOAAUBMU0Tk5kR/YcCM5fNPEzgCO2zJ5HfX0vbiH9HbJglnyeQsN96Kznae6MWD47pZB5avTrg== - -pino-std-serializers@^6.1.0: - version "6.2.2" - resolved "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.2.2.tgz" - integrity sha512-cHjPPsE+vhj/tnhCy/wiMh3M3z3h/j15zHQX+S9GkTBgqJuTuJzYJ4gUyACLhDaJ7kk9ba9iRDmbH2tJU03OiA== - pino-std-serializers@^7.0.0: version "7.0.0" resolved "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-7.0.0.tgz" integrity sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA== -pino@^6.8.0: - version "6.14.0" - resolved "https://registry.npmjs.org/pino/-/pino-6.14.0.tgz" - integrity sha512-iuhEDel3Z3hF9Jfe44DPXR8l07bhjuFY3GMHIXbjnY9XcafbyDDwl2sN2vw2GjMPf5Nkoe+OFao7ffn9SXaKDg== - dependencies: - fast-redact "^3.0.0" - fast-safe-stringify "^2.0.8" - flatstr "^1.0.12" - pino-std-serializers "^3.1.0" - process-warning "^1.0.0" - quick-format-unescaped "^4.0.3" - sonic-boom "^1.0.2" - -pino@^9.0.0: - version "9.1.0" - resolved "https://registry.npmjs.org/pino/-/pino-9.1.0.tgz" - integrity sha512-qUcgfrlyOtjwhNLdbhoL7NR4NkHjzykAPw0V2QLFbvu/zss29h4NkRnibyFzBrNCbzCOY3WZ9hhKSwfOkNggYA== +pino@*, pino@^9.0.0, pino@^9.5.0: + version "9.5.0" + resolved "https://registry.npmjs.org/pino/-/pino-9.5.0.tgz" + integrity sha512-xSEmD4pLnV54t0NOUN16yCl7RIB1c5UUOse5HSyEXtBp+FgFQyPeDutc+Q2ZO7/22vImV7VfEjH/1zV2QuqvYw== dependencies: atomic-sleep "^1.0.0" fast-redact "^3.1.1" on-exit-leak-free "^2.1.0" - pino-abstract-transport "^1.2.0" + pino-abstract-transport "^2.0.0" pino-std-serializers "^7.0.0" - process-warning "^3.0.0" + process-warning "^4.0.0" quick-format-unescaped "^4.0.3" real-require "^0.2.0" safe-stable-stringify "^2.3.1" @@ -6042,16 +6028,16 @@ process-nextick-args@~2.0.0: resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz" integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== -process-warning@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/process-warning/-/process-warning-1.0.0.tgz" - integrity sha512-du4wfLyj4yCZq1VupnVSZmRsPJsNuxoDQFdCFHLaYiEbFBD7QE0a+I4D7hOxrVnh78QE/YipFAj9lXHiXocV+Q== - process-warning@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/process-warning/-/process-warning-3.0.0.tgz" integrity sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ== +process-warning@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/process-warning/-/process-warning-4.0.0.tgz" + integrity sha512-/MyYDxttz7DfGMMHiysAsFE4qF+pQYAA8ziO/3NcRVrQ5fSk+Mns4QZA/oRPFzvcqNoVJXQNWNAsdwBXLUkQKw== + process@^0.11.10: version "0.11.10" resolved "https://registry.npmjs.org/process/-/process-0.11.10.tgz" @@ -6750,14 +6736,6 @@ socks@^2.7.1: ip-address "^9.0.5" smart-buffer "^4.2.0" -sonic-boom@^1.0.2: - version "1.4.1" - resolved "https://registry.npmjs.org/sonic-boom/-/sonic-boom-1.4.1.tgz" - integrity sha512-LRHh/A8tpW7ru89lrlkU4AszXt1dbwSjVWguGrmlxE7tawVmDBlI1PILMkXAxJTwqhgsEeTHzj36D5CmHgQmNg== - dependencies: - atomic-sleep "^1.0.0" - flatstr "^1.0.12" - sonic-boom@^3.0.0: version "3.8.1" resolved "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.8.1.tgz" @@ -6766,9 +6744,9 @@ sonic-boom@^3.0.0: atomic-sleep "^1.0.0" sonic-boom@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.0.1.tgz" - integrity sha512-hTSD/6JMLyT4r9zeof6UtuBDpjJ9sO08/nmS5djaA9eozT9oOlNdpXSnzcgj4FTqpk3nkLrs61l4gip9r1HCrQ== + version "4.2.0" + resolved "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.2.0.tgz" + integrity sha512-INb7TM37/mAcsGmc9hyyI6+QR3rR1zVRu36B0NeGXKnOOLiZOfER5SA+N7X7k3yUYRzLWafduTDvJAfDswwEww== dependencies: atomic-sleep "^1.0.0"