333
schangxiang@126.com
2025-09-19 18966e02fb573c7e2bb0c6426ed792b38b910940
1
{"version":3,"sources":["../browser/src/logger/SimpleConsoleLogger.ts"],"names":[],"mappings":"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","file":"SimpleConsoleLogger.js","sourcesContent":["import {LoggerOptions} from \"./LoggerOptions\";\nimport {QueryRunner} from \"../query-runner/QueryRunner\";\nimport {Logger} from \"./Logger\";\n\n/**\n * Performs logging of the events in TypeORM.\n * This version of logger uses console to log events and does not use syntax highlighting.\n */\nexport class SimpleConsoleLogger implements Logger {\n\n    // -------------------------------------------------------------------------\n    // Constructor\n    // -------------------------------------------------------------------------\n\n    constructor(private options?: LoggerOptions) {\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 || (this.options instanceof Array && this.options.indexOf(\"query\") !== -1)) {\n            const sql = query + (parameters && parameters.length ? \" -- PARAMETERS: \" + this.stringifyParams(parameters) : \"\");\n            console.log(\"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 || (this.options instanceof Array && this.options.indexOf(\"error\") !== -1)) {\n            const sql = query + (parameters && parameters.length ? \" -- PARAMETERS: \" + this.stringifyParams(parameters) : \"\");\n            console.log(`query failed: ` + sql);\n            console.log(`error:`, error);\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        console.log(`query is slow: ` + sql);\n        console.log(`execution time: ` + time);\n    }\n\n    /**\n     * Logs events from the schema build process.\n     */\n    logSchemaBuild(message: string, queryRunner?: QueryRunner) {\n        if (this.options === \"all\" || (this.options instanceof Array && this.options.indexOf(\"schema\") !== -1)) {\n            console.log(message);\n        }\n    }\n\n    /**\n     * Logs events from the migrations run process.\n     */\n    logMigration(message: string, queryRunner?: QueryRunner) {\n        console.log(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\" || (this.options instanceof Array && this.options.indexOf(\"log\") !== -1))\n                    console.log(message);\n                break;\n            case \"info\":\n                if (this.options === \"all\" || (this.options instanceof Array && this.options.indexOf(\"info\") !== -1))\n                    console.info(message);\n                break;\n            case \"warn\":\n                if (this.options === \"all\" || (this.options instanceof Array && this.options.indexOf(\"warn\") !== -1))\n                    console.warn(message);\n                break;\n        }\n    }\n\n    // -------------------------------------------------------------------------\n    // Protected Methods\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}"],"sourceRoot":".."}