在Debian系统上使用Node.js时,可以通过以下几种方法来查找慢查询日志:
以下是一个使用Winston记录查询时间的简单示例:
const winston = require('winston');
const logger = winston.createLogger({
level: 'info',
format: winston.format.json(),
transports: [
new winston.transports.File({ filename: 'error.log', level: 'error' }),
new winston.transports.File({ filename: 'combined.log' })
]
});
function logQuery(query, duration) {
const logMessage = {
query: query,
duration: duration,
timestamp: new Date()
};
logger.info('Query executed', logMessage);
}
// 使用示例
const startTime = Date.now();
// 执行查询...
const endTime = Date.now();
const duration = endTime - startTime;
if (duration > 1000) { // 假设1秒为慢查询阈值
logQuery('SELECT * FROM users', duration);
}
通过上述方法,可以有效地在Debian系统上的Node.js应用程序中查找慢查询日志,从而优化数据库查询性能。