소스 검색

log日志系统

john 8 달 전
부모
커밋
f2a38282f8
4개의 변경된 파일28개의 추가작업 그리고 2개의 파일을 삭제
  1. 4 1
      epub_node/app.js
  2. 2 1
      epub_node/package.json
  3. 1 0
      epub_node/utils/index.js
  4. 21 0
      epub_node/utils/logger.js

+ 4 - 1
epub_node/app.js

@@ -13,6 +13,7 @@ import cors from "cors";
 import epub from "./router/epub/index.js";
 
 import { generateToken, verifyToken } from "#utils";
+import logger from '#logger'
 
 const port = 3000;
 const app = express();
@@ -49,11 +50,12 @@ app.use(async function timeLog(req, res, next) {
     if (fileId) {
       return res.redirect(`/api/v1/files/${fileId}`);
     } else {
-      console.error("File ID not found in referer");
+      logger.error("File ID not found in referer");
     }
   }
   next();
 });
+logger.error("error error error error error error error ");
 
 // 静态文件目录,添加前缀路径 /static
 // app.use("/static", express.static("public"));
@@ -76,4 +78,5 @@ app.use("/api/v1/epub", epub);
 
 app.listen(port, () => {
   console.log(`Example app listening on port ${port}`);
+  logger.info(`Example app listening on port ${port}`)
 });

+ 2 - 1
epub_node/package.json

@@ -53,6 +53,7 @@
   "imports": {
     "#db": "./db/index.js",
     "#utils": "./utils/index.js",
-    "#environment": "./environment/index.js"
+    "#environment": "./environment/index.js",
+    "#logger": "./utils/logger.js"
   }
 }

+ 1 - 0
epub_node/utils/index.js

@@ -2,3 +2,4 @@ export * from './createMD5.js'
 export * from './files.js'
 export * from './authorization.js'
 export * from './dayTime.js'
+// export * as logger from './logger.js'

+ 21 - 0
epub_node/utils/logger.js

@@ -0,0 +1,21 @@
+import winston from 'winston'
+
+const logger = winston.createLogger({
+  level: 'info',
+  format: winston.format.json(),
+  defaultMeta: { service: 'user-service' },
+  transports: [
+    //
+    // - Write all logs with importance level of `error` or higher to `error.log`
+    //   (i.e., error, fatal, but not other levels)
+    //
+    new winston.transports.File({ filename: 'base_files/winston/error.log', level: 'error' }),
+    //
+    // - Write all logs with importance level of `info` or higher to `combined.log`
+    //   (i.e., fatal, error, warn, and info, but not trace)
+    //
+    new winston.transports.File({ filename: 'base_files/winston/combined.log' }),
+  ],
+});
+
+export default logger