Rename all workspace packages to reflect the actual project name: - @caldav/client -> @calchat/client - @caldav/server -> @calchat/server - @caldav/shared -> @calchat/shared - Root package: caldav-mono -> calchat-mono Update all import statements across client and server to use the new package names. Update default MongoDB database name and logging service identifier accordingly.
44 lines
947 B
TypeScript
44 lines
947 B
TypeScript
import pino from "pino";
|
|
|
|
const isDevelopment = process.env.NODE_ENV !== "production";
|
|
|
|
export const logger = pino({
|
|
level: process.env.LOG_LEVEL || (isDevelopment ? "debug" : "info"),
|
|
redact: {
|
|
paths: [
|
|
// Root level
|
|
"password",
|
|
"passwordHash",
|
|
"token",
|
|
// One level deep (e.g. user.password)
|
|
"*.password",
|
|
"*.passwordHash",
|
|
"*.token",
|
|
// In arrays (for 'args' in decorator)
|
|
"args[*].password",
|
|
"args[*].passwordHash",
|
|
"args[*].token",
|
|
],
|
|
censor: "[REDACTED]",
|
|
},
|
|
transport: isDevelopment
|
|
? {
|
|
target: "pino-pretty",
|
|
options: {
|
|
colorize: true,
|
|
translateTime: "SYS:HH:MM:ss",
|
|
ignore: "pid,hostname",
|
|
},
|
|
}
|
|
: undefined,
|
|
base: {
|
|
service: "calchat-server",
|
|
},
|
|
});
|
|
|
|
export function createLogger(module: string) {
|
|
return logger.child({ module });
|
|
}
|
|
|
|
export type Logger = pino.Logger;
|