1.最明显的功能,排查线上问题。
平时遇到bug时,要相信“人走过,必留下痕迹”,没有什么事情是没有原因的。
2.报警
我们的系统越来越多,业务越来越多,不可能靠人肉每天查询日志以发现问题,还是要利用机器。
针对具体的业务,打印具体格式的日志,通过日志收集系统的规则,发现问题则向相关人员报警。怎么实现日志收集系统呢,可以每隔一段时间,从生产环境中获取指定日志,每次读取后,记录本次读取日志的最后行数,下次再收集日志时,从该行数开始读取新的时间段的日志。
3.统计业务
还是要规范我们的摘要日志的格式,将每次读取的日志写入数据库,比如:
----统计出每秒访问量
----统计出错误日志数量,同样可以拿来报警
----统计出具体的业务,比如登录时,输错密码/输入密码次数的比例
同样,我们可以用grep、awk实现上述的业务功能,要知道,高手可以把log当作数据库,awk当作select、group、order。