Refactor logger and error handling modules
Moved isTrueFromDotEnv to logger.js and updated its usage. Simplified logger import and instantiation across modules. Added errors.js for centralized error exports. Set default error code in DefaultError. Cleaned up unused imports in utils.js.
This commit is contained in:
parent
c531f2c82c
commit
2e30763da5
@ -1,7 +1,7 @@
|
||||
class DefaultError extends Error {
|
||||
constructor(code, message, cause, name) {
|
||||
super(message)
|
||||
this.code = code
|
||||
this.code = code || 500
|
||||
this.name = name || "DefaultError"
|
||||
this.cause = cause || "Internal Server Error"
|
||||
this.message = message || "Internal Server Error"
|
||||
|
||||
3
errors/errors.js
Normal file
3
errors/errors.js
Normal file
@ -0,0 +1,3 @@
|
||||
module.exports = {
|
||||
DefaultError: require("./DefaultError")
|
||||
}
|
||||
@ -1,6 +1,5 @@
|
||||
const fs = require("node:fs")
|
||||
const path = require("node:path")
|
||||
const utils = require("./utils")
|
||||
require("colors")
|
||||
require("dotenv").config({
|
||||
quiet: true
|
||||
@ -41,7 +40,7 @@ function write($stream, level, color, content, extraLabels = []) {
|
||||
|
||||
function createLogger(root) {
|
||||
// eslint-disable-next-line no-useless-escape
|
||||
const fileName = utils.isTrueFromDotEnv("IS_PROD") ? new Date().toLocaleString("fr-FR", { timeZone: "UTC" }).replace(/[\/:]/g, "-").replace(/ /g, "_") : "DEV-LOG"
|
||||
const fileName = isTrueFromDotEnv("IS_PROD") ? new Date().toLocaleString("fr-FR", { timeZone: "UTC" }).replace(/[\/:]/g, "-").replace(/ /g, "_") : "DEV-LOG"
|
||||
|
||||
const logsDir = path.join(root, "logs")
|
||||
|
||||
@ -84,6 +83,10 @@ function stripColors(string) {
|
||||
return string.replace(/\x1B\[[0-9;]*[mK]/g, "")
|
||||
}
|
||||
|
||||
function isTrueFromDotEnv(key) {
|
||||
return (process.env[key] || "").trim().toLowerCase() === "true"
|
||||
}
|
||||
|
||||
const logger = createLogger(process.cwd())
|
||||
|
||||
module.exports = logger
|
||||
@ -1,6 +1,4 @@
|
||||
const path = require("node:path")
|
||||
const Logger = require("./logger")
|
||||
const logger = Logger.createLogger(path.join(__dirname, ".."))
|
||||
const logger = require("./logger")
|
||||
|
||||
function sendValidationError(req, res, zodResult, type, path, errorConfig) {
|
||||
const ip = req.headers["x-forwarded-for"] || req.socket.remoteAddress
|
||||
|
||||
@ -4,8 +4,7 @@ const app = express()
|
||||
const cors = require("cors")
|
||||
const path = require("node:path")
|
||||
const utils = require("./modules/utils")
|
||||
const Logger = require("./modules/logger")
|
||||
const logger = Logger.createLogger(__dirname)
|
||||
const logger = require("./modules/logger")
|
||||
const helmet = require("helmet")
|
||||
const loader = require("./modules/loader")
|
||||
const DefaultError = require("./errors/DefaultError")
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user