diff --git a/.env.example b/.env.example index fc389f4d..1a455025 100644 --- a/.env.example +++ b/.env.example @@ -1,15 +1,4 @@ -MONGODB_URL='mongodb://127.0.0.1:27017/openWF' - -#DOCKER ONLY +# Docker may need a .env file for the following settings: DATABASE_PORT=27017 DATABASE_USERNAME=root DATABASE_PASSWORD=database -#DOCKER ONLY END - -# save logs to file -LOG_FILES=true -#possible log levels: { fatal: 0, error: 1, warn: 2, info: 3, http: 4, debug: 5, trace: 6 } -LOG_LEVEL=trace - - - diff --git a/config.json b/config.json index 8d3121c6..757d8e7a 100644 --- a/config.json +++ b/config.json @@ -1,4 +1,10 @@ { + "mongodbUrl": "mongodb://127.0.0.1:27017/openWF", + "logger": { + "files": true, + "level": "trace", + "__valid_levels": "fatal, error, warn, info, http, debug, trace" + }, "myAddress": "localhost", "autoCreateAccount": true, "skipStoryModeChoice": true, diff --git a/package-lock.json b/package-lock.json index 432ade5d..acca0552 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,6 @@ "license": "GNU", "dependencies": { "copyfiles": "^2.4.1", - "dotenv": "^16.1.3", "express": "^5.0.0-beta.3", "mongoose": "^8.1.1", "warframe-items": "^1.1261.19", @@ -1493,17 +1492,6 @@ "node": ">=6.0.0" } }, - "node_modules/dotenv": { - "version": "16.1.3", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.1.3.tgz", - "integrity": "sha512-FYssxsmCTtKL72fGBSvb1K9dRz0/VZeWqFme/vSb7r7323x4CRaHu4LvQ5JG3+s6yt2YPbBrkpiEODktfyjI9A==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/motdotla/dotenv?sponsor=1" - } - }, "node_modules/dynamic-dedupe": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/dynamic-dedupe/-/dynamic-dedupe-0.3.0.tgz", diff --git a/package.json b/package.json index 04654aa7..ba09cc40 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,6 @@ "license": "GNU", "dependencies": { "copyfiles": "^2.4.1", - "dotenv": "^16.1.3", "express": "^5.0.0-beta.3", "mongoose": "^8.1.1", "warframe-items": "^1.1261.19", diff --git a/src/services/mongoService.ts b/src/services/mongoService.ts index 0ef0c82d..71ca5b65 100644 --- a/src/services/mongoService.ts +++ b/src/services/mongoService.ts @@ -1,10 +1,8 @@ import { logger } from "@/src/utils/logger"; -import * as dotenv from "dotenv"; +import config from "@/config.json"; import mongoose from "mongoose"; -dotenv.config(); - -const url = process.env.MONGODB_URL; +const url = config.mongodbUrl; if (url === undefined) { throw new Error("MONGODB_URL not found. Make sure you have a .env file in the root of the project!"); diff --git a/src/utils/logger.ts b/src/utils/logger.ts index c1bfbc69..246d87a9 100644 --- a/src/utils/logger.ts +++ b/src/utils/logger.ts @@ -1,11 +1,9 @@ import { createLogger, format, transports, Logger, LeveledLogMethod, addColors } from "winston"; import "winston-daily-rotate-file"; -import * as dotenv from "dotenv"; +import config from "@/config.json"; import * as util from "util"; import { isEmptyObject } from "@/src/helpers/general"; -dotenv.config(); - // const combineMessageAndSplat = () => { // return { // transform: (info: any, _opts: any) => { @@ -72,7 +70,7 @@ const consoleLog = new transports.Console({ ) }); -const transportOptions = process.env.LOG_FILES === "true" ? [consoleLog, errorLog, combinedLog] : [consoleLog]; +const transportOptions = config.logger.files ? [consoleLog, errorLog, combinedLog] : [consoleLog]; //possible log levels: { fatal: 0, error: 1, warn: 2, info: 3, http: 4, debug: 5, trace: 6 }, const logLevels = { @@ -98,7 +96,7 @@ const logLevels = { export const logger = createLogger({ levels: logLevels.levels, - level: process.env.LOG_LEVEL, + level: config.logger.level, defaultMeta: { version: process.env.npm_package_version }, transports: transportOptions }) as Logger & Record;