日志内容的复杂多样,比平常数据更难分析,通常的准实时数据仓库技术好好不高效,存在些不足。
因为日志格式的不统一造成分析难度较大,需要针对每种格式硬编码实现加工逻辑。可以从日志规范上着手简化加工,给源系统指定日志打印规范,然后一次开发针对不同系统的关注指标进行差异化配置实现多次服用。
收起应用日志使用全文搜索引擎在分析问题的时候还是比较重要的,因为:
1. 可以加速查询,无需登录每台主机
2. 可以将各个应用模块进行串联分析
3. 将应用的整体趋势与各个相关联的并非此应用的内容进行结合查看,可以分析出性能问题
如果要做全文搜索引擎,建议要考虑一下我们的目标。假如是我们上面是主要目标,则:
1. 需要接入应用的全部日志
2. 需要有串联id
3. 日志输出一定要规范化。最常见的 时间、级别、串联ID、事件类型、事件描述、必须要全部按照一定格式输出。
4. 在接入的时候使用事件合并(如果有这个功能,可以大大减少日志规范化工作量)
在日常使用中,经常出现的问题是 日志打印不规范,输出内容多而无用。如果出现这个问题,且很难更改,那么问题重点不再是选用何种搜索引擎,而是如何将日志规范化,因为无论何种引擎,如果需要精益分析,数据准确、可靠、可追溯是必须的要求。
收起