Bläddra i källkod

获取日志存在bug ,正在排查~~~

hl 9 månader sedan
förälder
incheckning
3764b1e354
2 ändrade filer med 24 tillägg och 5 borttagningar
  1. 23 4
      src/utils/file.js
  2. 1 1
      src/web.js

+ 23 - 4
src/utils/file.js

@@ -138,17 +138,36 @@ function getLastFile(dirPath, number, callback) {
 
 // 读取日志(倒叙)指定行数
 function readLastNLines(dirPath, filePathList, n) {
-    const fileList = filePathList.map((item) => {
+    const fileList = [];
+    var count = 0;
+    for(var i = filePathList.length-1;i >=0;i--){
+        var item = filePathList[i];
         var filepath = dirPath + "/" + item
 
         logger.info("日志文件:" + filepath)
         const content = fs.readFileSync(`${filepath}`, "utf8");
         let lines = content.trim().split("\n");
-        return {
+
+        fileList.push({
             filePath: item,
             lines: lines,
-        };
-    });
+        })
+        count += lines.length;
+        if(count > n){
+            break
+        }
+    }
+    // const fileList = filePathList.map((item) => {
+    //     var filepath = dirPath + "/" + item
+    //
+    //     logger.info("日志文件:" + filepath)
+    //     const content = fs.readFileSync(`${filepath}`, "utf8");
+    //     let lines = content.trim().split("\n");
+    //     return {
+    //         filePath: item,
+    //         lines: lines,
+    //     };
+    // });
     const allFile = [].concat(...fileList.map((item) => item.lines));
     let lastNLines = allFile.slice(-n).join("\n");
     return lastNLines.split("\n").reverse();

+ 1 - 1
src/web.js

@@ -100,7 +100,7 @@ function init() {
             try {
                 file.checkPathSync(directoryPath)
 
-                file.getLastFile(logPath, 10, (fileNameList) => {
+                file.getLastFile(logPath, 10, (fileNameList,_) => {
                     logger.info('文件:', fileNameList);
                     result = file.readLastNLines(logPath, fileNameList, n);
                     // logger.info('?????:', result);