node 日志学习
2019-05-08 本文已影响0人
尤小小
日志
系统没有日志,就等于人没有眼睛
第一,访问日志access log
第二,自定义日志
node.js 文件操作 nodejs stream 流
节省使用cpu和内存
日志功能开发和使用
日志文件拆分 日志内容分析
日志要存储到文件中
为什么不存储到mysql中
为什么不存储到redis中
写文件是一个异步操作
节省成本 方便读取查询
文件的操作是最慢的 但是成本最低
IO操作的性能瓶颈
IO包括 网络IO和文件IO
相比于CPU计算和内存读写,IO的突出特点就是:慢!
如何在有限的硬件资源下提高IO的操作效率?
sream source dest
流
日志拆分
日志内容会慢慢积累,放在一个文件中不好处理
按时间划分日志文件,如 2019-02-10.access.log
实现方式:linux的crontab命令,即定时任务
crontab
设置定时任务 格式:*****command
分钟 小时 日期月份 星期
将 accsss.log拷贝并重命名为2019-02-10.access.log
清空access.log 文件,继续积累日志
当前脚本的目录:/Users/gaobingyan/myBlog/blog-1/src/utils
日志分析
如针对access.log日志,分析chrome的占比
日志是按行存储的,一行就是一条日志
使用nodejs的readline(基于stream, 效率高)
日志-总结
日志对server端的重要性,相当于人的眼睛
IO性能瓶颈,使用stream提高性能,nodejs中如何操作?
使用crontab拆分日志文件,使用readlne分析日志内容?