diff --git a/server/Database.js b/server/Database.js index 5b8a71e2..521e016d 100644 --- a/server/Database.js +++ b/server/Database.js @@ -166,10 +166,25 @@ class Database { */ async connect() { Logger.info(`[Database] Initializing db at "${this.dbPath}"`) + + let logging = false + let benchmark = false + if (process.env.QUERY_LOGGING === "log") { + // Setting QUERY_LOGGING=log will log all Sequelize queries before they run + Logger.info(`[Database] Query logging enabled`) + logging = (query) => Logger.dev(`Running the following query:\n ${query}`) + } else if (process.env.QUERY_LOGGING === "benchmark") { + // Setting QUERY_LOGGING=benchmark will log all Sequelize queries and their execution times, after they run + Logger.info(`[Database] Query benchmarking enabled"`) + logging = (query, time) => Logger.dev(`Ran the following query in ${time}ms:\n ${query}`) + benchmark = true + } + this.sequelize = new Sequelize({ dialect: 'sqlite', storage: this.dbPath, - logging: false, + logging: logging, + benchmark: benchmark, transactionType: 'IMMEDIATE' })