赞
踩
什么是日志
日志就是程序产生的,遵循一定格式(通常包含时间戳)的文本数据。
通常日志由服务器生成,输出到不同的文件中,一般会有系统日志、 应用日志、安全日志。这些日志分散地存储在不同的机器上。
日志的重要性
日志主要包括系统日志、应用程序日志和安全日志。系统运维和开发人员可以通过日志了解服务器软硬件信息、检查配置过程中的错误及错误发生的原因。经常分析日志可以了解服务器的负荷,性能安全性,从而及时采取措施纠正错误。
我认为,日志数据在以下几方面具有非常重要的作用:
数据查找:通过检索日志信息,定位相应的 bug ,找出解决方案
服务诊断:通过对日志信息进行统计、分析,了解服务器的负荷和服务运行状态
数据分析:可以做进一步的数据分析,比如根据请求中的商品id ,找出 TOP10 用户感兴趣商品。
存在的问题
通常,日志被分散的储存不同的设备上。如果你管理数十上百台服务器,你还在使用依次登录每台机器的传统方法查阅日志。这样是不是感觉很繁琐和效率低下。当务之急我们使用集中化的日志管理,例如:开源的syslog,将所有服务器上的日志收集汇总。集中化管理日志后,日志的统计和检索又成为一件比较麻烦的事情,一般我们使用grep、awk和wc等Linux命令能实现检索和统计,但是对于要求更高的查询、排序和统计等要求和庞大的机器数量依然使用这样的方法难免有点力不从心。
如何解决
开源实时日志分析ELK平台能够完美的解决我们上述的问题,ELK是一个成熟的日志系统,主要功能有日志的收集、分析、检索。ELK由ElasticSearch、Logstash和Kibana三个开源工具组成。这三个工具组合形成了一套实用、易用的日志管理平台,可抓取系统日志、apache日志、nginx日志、mysql日志等多种日志类型,目前很多公司用它来搭建可视化的集中式日志分析平台。
ELK这三个开源工具的关系,简单来说就是logstatsh 收集日志,存到elasticserach (存储,产生索引,搜索),再由kibana展现(view)。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。