Merged in feat/redis-api-send-logs (pull request #2290)
feature: send logs to Sentry for Redis-Api * feature: send logs to Sentry for Redis-Api Approved-by: Linus Flood
This commit is contained in:
@@ -3,6 +3,7 @@ import pino from "pino";
|
||||
import { env } from "@/env";
|
||||
|
||||
import { mask } from "./mask";
|
||||
import { SentryLogger } from "@/server/sentry.server.config";
|
||||
|
||||
const serializers: { [key: string]: pino.SerializerFn } = {
|
||||
password: (payload) => {
|
||||
@@ -29,8 +30,38 @@ export const baseLogger = pino({
|
||||
level: process.env.LOG_LEVEL || "info",
|
||||
timestamp: pino.stdTimeFunctions.isoTime,
|
||||
serializers,
|
||||
hooks: {
|
||||
logMethod(args, method, level) {
|
||||
const [msg, ...rest] = args;
|
||||
switch (level) {
|
||||
case pinoLevels.error:
|
||||
SentryLogger.error(msg, rest);
|
||||
break;
|
||||
case pinoLevels.warn:
|
||||
SentryLogger.warn(msg, rest);
|
||||
break;
|
||||
case pinoLevels.info:
|
||||
SentryLogger.info(msg, rest);
|
||||
break;
|
||||
case pinoLevels.debug:
|
||||
SentryLogger.debug(msg, rest);
|
||||
break;
|
||||
}
|
||||
|
||||
method.apply(this, args);
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
export const loggerModule = (loggerName: string) => {
|
||||
return baseLogger.child({ module: loggerName });
|
||||
};
|
||||
|
||||
const pinoLevels = {
|
||||
trace: 10,
|
||||
debug: 20,
|
||||
info: 30,
|
||||
warn: 40,
|
||||
error: 50,
|
||||
fatal: 60,
|
||||
} as const;
|
||||
|
||||
Reference in New Issue
Block a user