摘要:
对于大多数程序,日志模块是不可或缺的,它是软件运行过程的录像,对于日后的数据统计,异常问题分析至关重要,所以我想谈谈一个日志系统应该满足的基本需求。这里只讨论单进程、非分布式条件下的程序,更复杂的情况不在本文讨论之内。命令行窗口、文件 对于命令行程序,在命令行窗口中输出信息是自然的需求,能够在程序执行时方便观察到输出的日志信息,但是某些情况下,命令行输出是不够的,比如有可能这是个后台程序,没有标准输出所对应的窗口,或者这是一个大型服务器程序,日志量巨大,窗口处于狂刷状态,根本无法用肉眼查看输出,还有最重要的场景,日志是需要存档的,用于日后的数据分析。所以,文件输出也是必要的需求。多线程 ... 阅读全文