feat: 添加日志输出

This commit is contained in:
imsyy
2023-12-06 09:25:26 +08:00
parent aab54d2190
commit 68edae7e74
4 changed files with 645 additions and 1224 deletions

View File

@@ -4,15 +4,47 @@ const bodyParser = require("koa-bodyparser");
const cors = require("koa2-cors");
const serve = require("koa-static");
const views = require("koa-views");
const winston = require("winston");
const path = require("path");
const app = new Koa();
const net = require("net");
const router = require("./routes");
const { createLogger, format, transports } = winston;
// 配置信息
let domain = process.env.ALLOWED_DOMAIN || "*";
let port = process.env.PORT || 6688;
// 配置 log
const log = createLogger({
format: format.combine(
format.timestamp(),
format.printf(({ timestamp, level, message }) => `[${timestamp}] [${level}] ${message}`),
),
transports: [
new transports.Console(),
new transports.File({
filename: path.join(__dirname, "logs", "app.log"),
maxsize: 2 * 1024 * 1024,
}),
],
});
// 重新定义 console
console.log = (...args) => {
log.info(args.join(" "));
};
console.info = (...args) => {
log.info(args.join(" "));
};
console.warn = (...args) => {
log.warn(args.join(" "));
};
console.error = (...args) => {
log.error(args.join(" "));
};
// 解析请求体
app.use(bodyParser());
@@ -50,7 +82,7 @@ app.use(router.allowedMethods());
// 启动应用程序并监听端口
const startApp = (port) => {
app.listen(port, () => {
console.log(`成功在 ${port} 端口上运行`);
log.info(`成功在 ${port} 端口上运行`);
});
};
@@ -61,7 +93,7 @@ const checkPort = (port) => {
.createServer()
.once("error", (err) => {
if (err.code === "EADDRINUSE") {
console.log(`端口 ${port} 已被占用, 正在尝试其他端口...`);
log.info(`端口 ${port} 已被占用, 正在尝试其他端口...`);
server.close();
resolve(false);
} else {