【备战春招】第6天 新版 Node.js+Express+Koa2 开发Web Server博客 8-8~8-9
2023/2/14 3:24:05
本文主要是介绍【备战春招】第6天 新版 Node.js+Express+Koa2 开发Web Server博客 8-8~8-9,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
课程名称: 新版 Node.js+Express+Koa2 开发Web Server博客
课程章节: 8-8 分析日志介绍 ~ 8-9 readline 演示
课程讲师: 双越
课程内容:
日志分析
- 如针对 access.log 日志,分析 chrome 的占比(简单的分析)
- 日志是按行存储的,一行就是一条 日志
- 使用 nodejs 的readline(基于stream,效率高)
utils/readline.js
const fs = require("fs"); const path = require("path"); const readline = require("readline"); // 文件名 const fileName = path.resolve(__dirname, "../", "../", "logs", "access.log"); // 创建 read stream const readStream = fs.createReadStream(fileName); // 创建 readline 对象 const rl = readline.createInterface({ input: readStream, }); let chromeNum = 0; let sum = 0; // 逐行读取 //line 读完一行就触发 rl.on("line", (lineData) => { if (!lineData) { return; } // 记录总行数 sum++; const arr = lineData.split(" -- "); if (arr[2] && arr[2].indexOf("Chrome") > 0) { // 累加 chrome 的数量 chromeNum++; } }); // 监听读取完成 rl.on("close", () => { console.log("chrome 占比:" + chromeNum / sum); });
课程收获:
- 明白如使用 nodejs 做日志分析
这篇关于【备战春招】第6天 新版 Node.js+Express+Koa2 开发Web Server博客 8-8~8-9的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-16React Hooks之useEffect案例详解
- 2024-11-16useRef案例详解:React中的useRef使用教程
- 2024-11-16React Hooks之useState案例详解
- 2024-11-16Vue入门指南:从零开始搭建第一个Vue项目
- 2024-11-16Vue3学习:新手入门教程与实践指南
- 2024-11-16Vue3学习:从入门到初级实战教程
- 2024-11-16Vue学习:新手入门必备教程
- 2024-11-16Vue3入门:新手必读的简单教程
- 2024-11-16Vue3入门:新手必读的简单教程
- 2024-11-16Vue入门:新手必读的简单教程