UNPKG

8.71 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../../src/logger/FileLogger.ts"],"names":[],"mappings":"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","file":"FileLogger.js","sourcesContent":["import {LoggerOptions, FileLoggerOptions} from \"./LoggerOptions\";\nimport appRootPath from \"app-root-path\";\nimport {QueryRunner} from \"../query-runner/QueryRunner\";\nimport {Logger} from \"./Logger\";\nimport {PlatformTools} from \"../platform/PlatformTools\";\n\n/**\n * Performs logging of the events in TypeORM.\n * This version of logger logs everything into ormlogs.log file.\n */\nexport class FileLogger implements Logger {\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(\n private options?: LoggerOptions,\n private fileLoggerOptions?: FileLoggerOptions,\n ) {\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Logs query and parameters used in it.\n */\n logQuery(query: string, parameters?: any[], queryRunner?: QueryRunner) {\n if (this.options === \"all\" || this.options === true || (Array.isArray(this.options) && this.options.indexOf(\"query\") !== -1)) {\n const sql = query + (parameters && parameters.length ? \" -- PARAMETERS: \" + this.stringifyParams(parameters) : \"\");\n this.write(\"[QUERY]: \" + sql);\n }\n }\n\n /**\n * Logs query that is failed.\n */\n logQueryError(error: string, query: string, parameters?: any[], queryRunner?: QueryRunner) {\n if (this.options === \"all\" || this.options === true || (Array.isArray(this.options) && this.options.indexOf(\"error\") !== -1)) {\n const sql = query + (parameters && parameters.length ? \" -- PARAMETERS: \" + this.stringifyParams(parameters) : \"\");\n this.write([\n `[FAILED QUERY]: ${sql}`,\n `[QUERY ERROR]: ${error}`\n ]);\n }\n }\n\n /**\n * Logs query that is slow.\n */\n logQuerySlow(time: number, query: string, parameters?: any[], queryRunner?: QueryRunner) {\n const sql = query + (parameters && parameters.length ? \" -- PARAMETERS: \" + this.stringifyParams(parameters) : \"\");\n this.write(`[SLOW QUERY: ${time} ms]: ` + sql);\n }\n\n /**\n * Logs events from the schema build process.\n */\n logSchemaBuild(message: string, queryRunner?: QueryRunner) {\n if (this.options === \"all\" || (Array.isArray(this.options) && this.options.indexOf(\"schema\") !== -1)) {\n this.write(message);\n }\n }\n\n /**\n * Logs events from the migrations run process.\n */\n logMigration(message: string, queryRunner?: QueryRunner) {\n this.write(message);\n }\n\n /**\n * Perform logging using given logger, or by default to the console.\n * Log has its own level and message.\n */\n log(level: \"log\"|\"info\"|\"warn\", message: any, queryRunner?: QueryRunner) {\n switch (level) {\n case \"log\":\n if (this.options === \"all\" || (Array.isArray(this.options) && this.options.indexOf(\"log\") !== -1))\n this.write(\"[LOG]: \" + message);\n break;\n case \"info\":\n if (this.options === \"all\" || (Array.isArray(this.options) && this.options.indexOf(\"info\") !== -1))\n this.write(\"[INFO]: \" + message);\n break;\n case \"warn\":\n if (this.options === \"all\" || (Array.isArray(this.options) && this.options.indexOf(\"warn\") !== -1))\n this.write(\"[WARN]: \" + message);\n break;\n }\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Writes given strings into the log file.\n */\n protected write(strings: string|string[]) {\n strings = Array.isArray(strings) ? strings : [strings];\n const basePath = appRootPath.path + \"/\";\n let logPath = \"ormlogs.log\";\n if (this.fileLoggerOptions && this.fileLoggerOptions.logPath) {\n logPath = PlatformTools.pathNormalize(this.fileLoggerOptions.logPath);\n }\n strings = (strings as string[]).map(str => \"[\" + new Date().toISOString() + \"]\" + str);\n PlatformTools.appendFileSync(basePath + logPath, strings.join(\"\\r\\n\") + \"\\r\\n\"); // todo: use async or implement promises?\n }\n\n /**\n * Converts parameters to a string.\n * Sometimes parameters can have circular objects and therefor we are handle this case too.\n */\n protected stringifyParams(parameters: any[]) {\n try {\n return JSON.stringify(parameters);\n\n } catch (error) { // most probably circular objects in parameters\n return parameters;\n }\n }\n\n}\n"],"sourceRoot":".."}
\No newline at end of file