recipe_app/backend/src/utils/logger.ts
2025-08-15 15:02:11 -07:00

35 lines
773 B
TypeScript

import fs from "fs";
class Logger {
private filePath: string;
constructor(filePath: string = "/logs/app.log") {
this.filePath = filePath;
}
private log(level: string, message: string, params?: object) {
const logEntry = {
timestamp: new Date().toISOString(),
level: level,
message: message,
params: params,
};
fs.appendFile(this.filePath, JSON.stringify(logEntry) + "\n", (err) => {
if (err) throw err;
});
}
info(message: string, params: object = {}) {
this.log("info", message, params);
}
warn(message: string, params: object = {}) {
this.log("warn", message, params);
}
error(message: string, params: object = {}) {
this.log("error", message, params);
}
}
export default Logger;