@randombenj/db
Version:
Display, search and copy LXD-images using a web interface.
54 lines • 1.82 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const common_1 = require("@lxdhub/common");
/**
* The log service implementation for the typeorm logger
*/
class LogService {
/**
* Initializes the log service
* @param logLevel The level of the logger
*/
constructor(logLevel = 'info') {
this.logger = new common_1.WinstonLogger('LXDHubDB', logLevel);
}
formatMessage(type, query, parameters, error, time) {
let msg = type;
msg += `\nExecuted query: ${query}`;
msg += parameters && parameters.length ? `\nQuery Parameter: ${JSON.stringify(parameters)}` : '';
msg += error ? `\nError: ${error}` : '';
msg += time ? `\nTime: ${time}` : '';
return msg;
}
/**
* Logs a query
* @param query The query
* @param parameters The query parameters
*/
logQuery(query, parameters, queryRunner) {
this.logger.debug(this.formatMessage('LogQuery', query, parameters));
}
/**
* Logs a query error
* @param error The error message of the query
* @param query The query
* @param parameters The parameters of the query
*/
logQueryError(error, query, parameters, queryRunner) {
this.logger.error(this.formatMessage('QueryError', query, parameters, error));
}
logQuerySlow(time, query, parameters, queryRunner) {
this.logger.warn(this.formatMessage('SlowQuery', query, parameters, undefined, time));
}
logSchemaBuild(message, queryRunner) {
this.logger.silly(message);
}
logMigration(message, queryRunner) {
this.logger.info(message);
}
log(level, message, queryRunner) {
this.logger[level](message);
}
}
exports.LogService = LogService;
//# sourceMappingURL=log.service.js.map