1.1.1. 简介
什么是日志监控?
关于日志,不同公司,情况不同,大致可分为如下三类情况:
1)没有日志监控及日志收集系统,一般是对日志告警、分析没有需求。
2)有日志收集,只有用户说系统挂了,或者有bug的时候,才会登录到系统看看日志,大部分日志打印得对心所欲,缺乏组织性和系统性,一般是用于事后故障分析。
3)有日志收集及日志告警,有日志规范、系统性的组织和收集日志的接口,对日志进行监控,先于用户发现系统的故障进行实时告警,一般是会主动性预警。
1.1.2. 日志监控的需求
对于日志的监控,一般有这么几类需求:
1)某种级别的日志(例如FATAL级别,或者ERROR级别的日志)一旦出现,或者超过一定频率,就告警;
2)包含某些特殊含义关键字(例如OutOfMemory,或者Exception)的异常日志,一旦出现,或者超过一定频率,就告警;
3)包含某些特殊含义关键字(例如Login,或者Click)的正常日志,一旦一定时间周期没有出现,就告警;
其中,前两类需求,属于异常日志监控范畴,出现异常,实施告警。第三类需求,属于正常日志监控范畴,一定的时间没有出现“正常”,就默认异常。
1.1.3. 集中式日志监控平台
集中式的日志监控,最流行的莫过于ELK:
部署思路:
1)各个机器节点上部署logstash,用于收集日志;
2)收集的日志集中汇总到ES模块;
3)通过Kibana做统一分析和展现;
适用于大规模的服务器集群。
第五章、系统与应用管理-日志平台建设