浅谈日志系统
日志的作用
有人说日志是做调试用的,是调试工具;也有人说日志是运行时查错用的,当线上服务出了问题可以很方便地通过日志查出程序异常点;同时也有人说日志是统计用的,对于线上数据做一些统计时,可以只通过查日志来获取简单的数据信息。
以上观点各有道理,不过个人认为在理解日志的作用之前,首先搞清楚日志的概念是很必要的。那么日志到底是什么呢?
认为日志是调试工作的,自然能从日志里面获取到他需要的调试信息,因此日志包含了必要的调试信息;认为是志是线上问题究错的,自然日志也有线上服务出异常的对应信息;认为日志是统计工作的呢,日志当然包含了一些必要的数据信息。
因此,个人总结出的日志的定义:日志是程序运行的痕迹!
理解了这个定义,对于日志的功能自然有很好的解释了。日志的作用便是根据程序运行的痕迹信息可以挖掘到更深层次必然的有用的信息。他可大致分为几类:1 产品发部前;2 产品运行中;3 产品下架后。
产品发部前
产品发部前可以根据日志进行程序究错,可以根据日志进行程序正确性验证,可以根据日志进行产品策略正确性验证。
产品运行中
产品发部中即线上服务正在运行此产品,可以根据这些日志进行线上究错,可以根据这些日志进行线上服务维护,可以根据日志进行必要的统计。
产品下架后
关品上架后,日志仍是有用的,可以根据这些日志进行必要的加工,得出这个产品是否符合当初的设计,优缺点在哪;是否有过线上问题,频率是多大,根源在哪。这些更深层次的挖掘对于服务产业来讲,是很有必要的
日志的系统设计
日志等级:日志根据不同的重要性不同的作用可以分成不同的等级
日志系统逻辑结构:。。。。
日志系统的功能设计:…….
日志系统的接口设计:……
日志运行时代价
日志即是程序运行时往文件中写运行是信息,需要操作io,因此也是有代价的。
日志文件的运行是切割
如果一个服务长时间运行,只存在一个固定文件中,会使文件特别大,这样不好操作,也不好对日志进行管理。
mv (handle)
后记
如果真的能够把日志理解到了服务运行的痕迹的份上,大概可以理解到日志的很多用途了。
thx
张久安
If you enjoyed this post, make sure you subscribe to my RSS feed!








