利用应用的日志文件诊断问题并防止问题出现。落实监控日志文件的流程,强制人们对发现的问题采取措施。利用各种监控工具,如定制的脚本或者Splunk,观察应用的日志,找出错误。导出这些错误,指派人员识别并解决相关的问题。
日志文件是很好的信息源,可以了解应用是如何执行的。不要对它置之不理。好好利用日志文件,可以减少系统的生产问题。
本着要用正确的工具完成工作的精神,让我们来看看可能每个人都有但却常常被忽略的工具一日志文件。除非你故意关闭了Web或应用服务器的记录日志功能,否则几乎各种应用都有错误和访问日志。Apache有错误和访问日志,Tomcat有java.util.logging或Log4j,Webshpere有Systremerr和Systemout日志。这些日志是非常有用的工具,可以让我们了解应用的性能和可能会妨碍扩展的问题。要最合理利用这种工具,需要遵守下面几个简单但重要的步骤。
使用日志文件的第一步是把它们集合起来。因为你可能有几十甚至几百台服务器,那么需要把数据集合起来才能使用。如果数据量太大,无法集合起来,那么可以采样,如每N个服务器采集一次。另一种策略是把几台服务器的日志集合到一台日志服务器上,然后由这台服务器把这些半集合的日志传递到最终集合地点。专用的日志服务器可以把日志数据集合起来,然后发送到数据存储设备上。这种集合操作通常是经过带外网络执行的,与生产环境使用的不是同一个网络。要避免日志数据、监控数据或集合数据影响生产环境的流量。
下一步是监控这些日志。令人吃惊的是,许多客户花费了时间和计算资源记录和集合日志,但是却忽略了其中的数据。虽然你会使用发生事故时的日志文件帮助恢复服务,但这没有最大化利用日志。首先可以采用的方式是利用自动化工具监控这些日志文件。可以使用定制的脚本进行监控,如一个shel脚本,可以按给定模式搜索文件内容,累计错误数量,当超过阈值时进行修改。更复杂的工具,像Cricket或Cacti,具有绘制图形的能力。同时具有集合和监控日志文件功能的工具是Splunk在集合了日志并监控错误后,最后一步是修正问题。这需要分配程序员和QA人员,识別与个别问题相关的一般错误。通常,应用程序流中的一个bug会造成形式各异的错误。发现这个bug的程序员很可能会被指派为修正它的人,也可能会把这个任务分配给其他程序员。
虽然我们希望日志文件中完全没有错误,但是不可能一直这样。日志文件中的错误很常见,需要建立一个流程,确保它们不会失控或被忽略了。有些小组会定期(每发布三个版本或四个版本)清理那些不需要立即处理的错误。这些错误很简单,可能是应用中没有重定向配置,或者没有处理已知错误的条件等。
必须记住,记录日志也是有成本的。不仅有保存额外数据的成本,还有事务响应时间的成本。通过不时地总结日志、归档、在日志价值下降时清除它,有助于减少保存数据的成本。可以通过异步模式记录日志,从而最小化存储日志的成本。最终,我们要注意记录日志的成本,关于记录多少数据以及保留多少数据,需要作出高性价比的决策。
希望我们说服了你,让你相信在网站建设调试和监控应用时日志文件是个重要的工具。利用这么一个你很可能已经有的工具,能够帮助你极大地增强客户体验和应用的可扩展性。
>>> 查看《积极利用日志文件》更多相关资讯 <<<
本文地址:http://www.phpweb.com.cn/news/html/3465.html