Chore: Update pino and pino-pretty (#24242)

pull/23804/head^2
Diego Sampaio 3 years ago committed by GitHub
parent 999fe71751
commit 75a9ee54e8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 50
      ee/server/services/package-lock.json
  2. 4
      ee/server/services/package.json
  3. 48
      package-lock.json
  4. 4
      package.json
  5. 9
      server/lib/logger/Logger.ts
  6. 45
      server/lib/logger/getPino.ts

@ -1253,9 +1253,9 @@
"dev": true
},
"fast-redact": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.0.2.tgz",
"integrity": "sha512-YN+CYfCVRVMUZOUPeinHNKgytM1wPI/C/UCLEi56EsY2dwwvI00kIJHJoI7pMVqGoMew8SMZ2SSfHKHULHXDsg=="
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.1.0.tgz",
"integrity": "sha512-dir8LOnvialLxiXDPESMDHGp82CHi6ZEYTVkcvdn5d7psdv9ZkkButXrOeXST4aqreIRR+N7CYlsrwFuorurVg=="
},
"fast-safe-stringify": {
"version": "2.1.1",
@ -1268,11 +1268,6 @@
"resolved": "https://registry.npmjs.org/fastest-validator/-/fastest-validator-1.11.0.tgz",
"integrity": "sha512-iF4Gj2Viz2T8D3aLcRt5doTDwCJYBe9LgNv36j2lpoGoKvOroGKxG2oOGWcHoxGREsMVlNDrbUQOU9fDMmO7jw=="
},
"fastify-warning": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/fastify-warning/-/fastify-warning-0.2.0.tgz",
"integrity": "sha512-s1EQguBw/9qtc1p/WTY4eq9WMRIACkj+HTcOIK1in4MV5aFaQC9ZCIt0dJ7pr5bIf4lPpHvAtP2ywpTNgs7hqw=="
},
"fclone": {
"version": "1.0.11",
"resolved": "https://registry.npmjs.org/fclone/-/fclone-1.0.11.tgz",
@ -1440,11 +1435,6 @@
"wide-align": "^1.1.0"
}
},
"get-caller-file": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg=="
},
"get-uri": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/get-uri/-/get-uri-3.0.2.tgz",
@ -2261,16 +2251,15 @@
}
},
"pino": {
"version": "7.5.1",
"resolved": "https://registry.npmjs.org/pino/-/pino-7.5.1.tgz",
"integrity": "sha512-Wzo2G7CLaRHKOz3+Ex006LC5Xi0xEUm+mwm/h0NKzuKZONdekcbmjXg7vWDoO8hVTGX+1RuUy2fwlzvZ24EI5A==",
"version": "7.6.4",
"resolved": "https://registry.npmjs.org/pino/-/pino-7.6.4.tgz",
"integrity": "sha512-ktibPg3ttWONxYQ2Efk1zYbIvofD5zdd/ReoujK84ggEp0REflb9TsXavSjt8u1CdT2mMJe9QQ3ZpyOQxUKipA==",
"requires": {
"fast-redact": "^3.0.0",
"fastify-warning": "^0.2.0",
"get-caller-file": "^2.0.5",
"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",
@ -2288,16 +2277,16 @@
}
},
"pino-pretty": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-7.2.0.tgz",
"integrity": "sha512-pkZhaF1JiyQt4BRqkLANYWuZTxavmuXh3OHsb8goeQasTFgNdzOECXkZWyPYrA0YMRa8zKoVsCzeYz9lI2NYwA==",
"version": "7.5.0",
"resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-7.5.0.tgz",
"integrity": "sha512-vhGvWhb8SZcmO/q8G0NyWTJ6UTfjHzIzHd6kC5Ob8UJH3FIP6f0nJ5+KglmThYTJXjGaaOGe06ulNrNDohCneQ==",
"dev": true,
"requires": {
"args": "^5.0.1",
"colorette": "^2.0.7",
"dateformat": "^4.6.3",
"fast-safe-stringify": "^2.0.7",
"joycon": "^3.0.0",
"joycon": "^3.1.1",
"pino-abstract-transport": "^0.5.0",
"pump": "^3.0.0",
"readable-stream": "^3.6.0",
@ -2455,6 +2444,11 @@
"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": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/process-warning/-/process-warning-1.0.0.tgz",
"integrity": "sha512-du4wfLyj4yCZq1VupnVSZmRsPJsNuxoDQFdCFHLaYiEbFBD7QE0a+I4D7hOxrVnh78QE/YipFAj9lXHiXocV+Q=="
},
"promptly": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/promptly/-/promptly-2.2.0.tgz",
@ -2865,9 +2859,9 @@
}
},
"sonic-boom": {
"version": "2.4.1",
"resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-2.4.1.tgz",
"integrity": "sha512-WgtVLfGl347/zS1oTuLaOAvVD5zijgjphAJHgbbnBJGgexnr+C1ULSj0j7ftoGxpuxR4PaV635NkwFemG8m/5w==",
"version": "2.6.0",
"resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-2.6.0.tgz",
"integrity": "sha512-6xYZFRmDEtxGqfOKcDQ4cPLrNa0SPEDI+wlzDAHowXE6YV42NeXqg9mP2KkiM8JVu3lHfZ2iQKYlGOz+kTpphg==",
"requires": {
"atomic-sleep": "^1.0.0"
}
@ -2998,9 +2992,9 @@
}
},
"thread-stream": {
"version": "0.13.0",
"resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-0.13.0.tgz",
"integrity": "sha512-kTMZeX4Dzlb1zZ00/01aerGaTw2i8NE4sWF0TvF1uXewRhCiUjCvatQkvxIvFqauWG2ADFS2Wpd3qBeYL9i3dg==",
"version": "0.13.1",
"resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-0.13.1.tgz",
"integrity": "sha512-+KNCqNxOSwYfXLtCIRDKQq29x9jvqnOFjYCPdB38sf4pT3QanPSNc8vRqMj+Q3z4tYIctb5opNZrMK/GwmgsAQ==",
"requires": {
"real-require": "^0.1.0"
}

@ -39,7 +39,7 @@
"moleculer": "^0.14.14",
"mongodb": "^3.6.10",
"nats": "^1.4.12",
"pino": "^7.5.1",
"pino": "^7.6.4",
"sodium-native": "^3.2.1",
"sodium-plus": "^0.9.0",
"underscore.string": "^3.3.5",
@ -55,7 +55,7 @@
"@types/mongodb": "^3.6.19",
"@types/node": "^14.17.4",
"@types/ws": "^7.4.7",
"pino-pretty": "^7.2.0",
"pino-pretty": "^7.5.0",
"pm2": "^5.1.2",
"ts-node": "^10.0.0",
"typescript": "^4.3.5"

48
package-lock.json generated

@ -19311,9 +19311,9 @@
"integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc="
},
"fast-redact": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.0.2.tgz",
"integrity": "sha512-YN+CYfCVRVMUZOUPeinHNKgytM1wPI/C/UCLEi56EsY2dwwvI00kIJHJoI7pMVqGoMew8SMZ2SSfHKHULHXDsg=="
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.1.0.tgz",
"integrity": "sha512-dir8LOnvialLxiXDPESMDHGp82CHi6ZEYTVkcvdn5d7psdv9ZkkButXrOeXST4aqreIRR+N7CYlsrwFuorurVg=="
},
"fast-safe-stringify": {
"version": "2.0.7",
@ -19342,11 +19342,6 @@
"resolved": "https://registry.npmjs.org/fastest-validator/-/fastest-validator-1.11.0.tgz",
"integrity": "sha512-iF4Gj2Viz2T8D3aLcRt5doTDwCJYBe9LgNv36j2lpoGoKvOroGKxG2oOGWcHoxGREsMVlNDrbUQOU9fDMmO7jw=="
},
"fastify-warning": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/fastify-warning/-/fastify-warning-0.2.0.tgz",
"integrity": "sha512-s1EQguBw/9qtc1p/WTY4eq9WMRIACkj+HTcOIK1in4MV5aFaQC9ZCIt0dJ7pr5bIf4lPpHvAtP2ywpTNgs7hqw=="
},
"fastq": {
"version": "1.11.0",
"resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.0.tgz",
@ -21274,7 +21269,8 @@
"get-caller-file": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg=="
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
"dev": true
},
"get-css-data": {
"version": "2.0.2",
@ -29021,16 +29017,15 @@
}
},
"pino": {
"version": "7.5.1",
"resolved": "https://registry.npmjs.org/pino/-/pino-7.5.1.tgz",
"integrity": "sha512-Wzo2G7CLaRHKOz3+Ex006LC5Xi0xEUm+mwm/h0NKzuKZONdekcbmjXg7vWDoO8hVTGX+1RuUy2fwlzvZ24EI5A==",
"version": "7.6.4",
"resolved": "https://registry.npmjs.org/pino/-/pino-7.6.4.tgz",
"integrity": "sha512-ktibPg3ttWONxYQ2Efk1zYbIvofD5zdd/ReoujK84ggEp0REflb9TsXavSjt8u1CdT2mMJe9QQ3ZpyOQxUKipA==",
"requires": {
"fast-redact": "^3.0.0",
"fastify-warning": "^0.2.0",
"get-caller-file": "^2.0.5",
"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",
@ -29071,16 +29066,16 @@
}
},
"pino-pretty": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-7.2.0.tgz",
"integrity": "sha512-pkZhaF1JiyQt4BRqkLANYWuZTxavmuXh3OHsb8goeQasTFgNdzOECXkZWyPYrA0YMRa8zKoVsCzeYz9lI2NYwA==",
"version": "7.5.0",
"resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-7.5.0.tgz",
"integrity": "sha512-vhGvWhb8SZcmO/q8G0NyWTJ6UTfjHzIzHd6kC5Ob8UJH3FIP6f0nJ5+KglmThYTJXjGaaOGe06ulNrNDohCneQ==",
"dev": true,
"requires": {
"args": "^5.0.1",
"colorette": "^2.0.7",
"dateformat": "^4.6.3",
"fast-safe-stringify": "^2.0.7",
"joycon": "^3.0.0",
"joycon": "^3.1.1",
"pino-abstract-transport": "^0.5.0",
"pump": "^3.0.0",
"readable-stream": "^3.6.0",
@ -30649,6 +30644,11 @@
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz",
"integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw=="
},
"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=="
},
"progress": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
@ -33441,9 +33441,9 @@
}
},
"sonic-boom": {
"version": "2.4.1",
"resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-2.4.1.tgz",
"integrity": "sha512-WgtVLfGl347/zS1oTuLaOAvVD5zijgjphAJHgbbnBJGgexnr+C1ULSj0j7ftoGxpuxR4PaV635NkwFemG8m/5w==",
"version": "2.6.0",
"resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-2.6.0.tgz",
"integrity": "sha512-6xYZFRmDEtxGqfOKcDQ4cPLrNa0SPEDI+wlzDAHowXE6YV42NeXqg9mP2KkiM8JVu3lHfZ2iQKYlGOz+kTpphg==",
"requires": {
"atomic-sleep": "^1.0.0"
}
@ -35712,9 +35712,9 @@
"dev": true
},
"thread-stream": {
"version": "0.13.0",
"resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-0.13.0.tgz",
"integrity": "sha512-kTMZeX4Dzlb1zZ00/01aerGaTw2i8NE4sWF0TvF1uXewRhCiUjCvatQkvxIvFqauWG2ADFS2Wpd3qBeYL9i3dg==",
"version": "0.13.1",
"resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-0.13.1.tgz",
"integrity": "sha512-+KNCqNxOSwYfXLtCIRDKQq29x9jvqnOFjYCPdB38sf4pT3QanPSNc8vRqMj+Q3z4tYIctb5opNZrMK/GwmgsAQ==",
"requires": {
"real-require": "^0.1.0"
}

@ -146,7 +146,7 @@
"jsdom-global": "^3.0.2",
"mocha": "^9.1.3",
"mock-require": "^3.0.3",
"pino-pretty": "^7.2.0",
"pino-pretty": "^7.5.0",
"postcss": "^8.3.5",
"postcss-custom-properties": "^11.0.0",
"postcss-easy-import": "^3.0.0",
@ -281,7 +281,7 @@
"object-path": "^0.11.8",
"pdfjs-dist": "^2.8.335",
"photoswipe": "^4.1.3",
"pino": "^7.5.1",
"pino": "^7.6.4",
"poplib": "^0.1.7",
"postis": "^2.2.0",
"prom-client": "^12.0.0",

@ -1,5 +1,4 @@
import type { P } from 'pino';
import type { MainLogger } from './getPino';
import { getPino } from './getPino';
import { logLevel, LogLevelSetting } from './logLevel';
@ -23,7 +22,7 @@ logLevel.once('changed', (level) => {
});
export class Logger {
readonly logger: P.Logger;
readonly logger: MainLogger;
constructor(loggerLabel: string) {
this.logger = getPino(loggerLabel, defaultLevel);
@ -33,8 +32,8 @@ export class Logger {
});
}
section(name: string): P.Logger {
const child = this.logger.child({ section: name });
section(name: string): MainLogger {
const child = this.logger.child({ section: name }) as MainLogger;
logLevel.on('changed', (level) => {
child.level = getLevel(level);

@ -1,30 +1,43 @@
import { pino } from 'pino';
import type { P } from 'pino';
import type { Logger } from 'pino';
// make sure log queue is set up, so pino uses the overwritten process.stdout.write
import './logQueue';
// add support to multiple params on the log commands, i.e.:
// logger.info('user', Meteor.user()); // will print: {"level":30,"time":1629814080968,"msg":"user {\"username\": \"foo\"}"}
function logMethod(this: P.Logger, args: unknown[], method: any): void {
function logMethod(this: Logger, args: unknown[], method: any): void {
if (args.length > 1) {
args[0] = `${args[0]}${' %j'.repeat(args.length - 1)}`;
}
return method.apply(this, args);
}
export function getPino(name: string, level = 'warn'): P.Logger {
return pino({
name,
hooks: { logMethod },
customLevels: {
http: 35,
method: 35,
subscription: 35,
startup: 51,
},
level,
timestamp: pino.stdTimeFunctions.isoTime,
...(process.env.NODE_ENV !== 'production' ? { prettyPrint: { colorize: true } } : {}),
});
const mainPino = pino({
hooks: { logMethod },
customLevels: {
http: 35,
method: 35,
subscription: 35,
startup: 51,
},
name: '',
level: 'warn',
timestamp: pino.stdTimeFunctions.isoTime,
...(process.env.NODE_ENV !== 'production'
? {
transport: {
target: 'pino-pretty',
options: {
colorize: true,
},
},
}
: {}),
});
export type MainLogger = typeof mainPino;
export function getPino(name: string, level = 'warn'): MainLogger {
return mainPino.child({ name, level }) as MainLogger;
}

Loading…
Cancel
Save