谈日志采集和分析

标签: IT咨询 | 发表时间:2013-08-18 11:45 | 作者:人月神话
出处:http://blog.sina.com.cn/cmmi
本篇为杂谈,只谈一个日志采集分析工具实现过程中的关键点。

对于log文件的采集需要支持分布式的集群,从多个集群机器进行日志采集。同时日志采集需要对日志文件进行类似流处理的增量实时采集,类似flume工具的一种实现模式。日志采集不是目的,而基于采集后的日志实时处理,实时处理后的实时分析才是重点。

日志文件本身是一个非结构化的文本文件,但是里面又包含了可以结构化出来的信息,因此对于日志文件是最适合采用mongoDB这种数据库进行存储。首先是对日志文件进行实施的解析和入库,在这里的难点是需要开发对于不同格式的日志文件的解析规则的适配器,如果再做的灵活一点,应该是支持所有日志文件,可以自定义相关的日志解析规则。

对于任何的日志文件,基本都可以采集的发生的时间,日志类型(info,error),日志等级,关键异常,异常详细说明等相关信息。这些信息在结构化出来后需要持久化的存储起来,采用mongoDB这种数据库可以实现本身在数据存储层的灵活水平扩展。

在对采集的日志进行处理并持久化存储入库后,接下来的工作就相当简单,即需要开发相应的日志查询和分析功能,可以根据时间段,日志类型,可以根据具体的异常编码,异常关键字内容等对日志信息进行快速的查询和定位。

在ITIL里面我们经常看到一个功能即问题树和知识库,那么基于日志的分析和处理仍然可以采用该模式,对于关键的日志异常信息的处理,我们可以将实际的处理方法和结果信息直接登记入库,同时关键日常和处理方法建立对应的关联关系,那么这就不仅仅是一个日志采集分析功能,而是一个基于日志快速的解决问题的知识库。

要将该思路实现为一个产品,涉及到诸多的分布式,云计算相关技术的应用。这个选点可能比较小,但是却有实际支撑的业务场景,能够发挥我们说的在大规模分布式集群架构下的实时流处理,实时分析,半结构化数据库的使用等。任何云技术的使用都应该根据目标驱动的方式去思考问题,而不是为了技术而技术。

  青春就应该这样绽放   游戏测试:三国时期谁是你最好的兄弟!!   你不得不信的星座秘密

相关 [日志 分析] 推荐:

GC 日志分析

- - 码蜂笔记
不同的JVM及其选项会输出不同的日志. 生成下面日志使用的选项: -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -Xloggc:d:/GClogs/tomcat6-gc.log. 最前面的数字 4.231 和 4.445 代表虚拟机启动以来的秒数.

apache日志分析简介

- - 编程语言 - ITeye博客
如果apache的安装时采用默认的配置,那么在/logs目录下就会生成两个文件,分别是access_log和error_log. access_log为访问日志,记录所有对apache服务器进行请求的访问,它的位置和内容由CustomLog指令控制,LogFormat指令可以用来简化该日志的内容和格式.

goaccess分析nginx日志

- - C1G军火库
GoAcces是一款实时日志分析工具. 目前,我们可以通过这款软件查看的统计信息有:. 静态web请求,如图片、样式表、脚本等. 支持超大日志(分析速度很快). GoAccess的基本语法如下:. -b – 开启流量统计,如果希望加快分析速度不建议使用该参数. -s – 开启HTTP响应代码统计. -a – 开启用户代理统计.

gc日志分析工具

- - Web前端 - ITeye博客
性能测试排查定位问题,分析调优过程中,会遇到要分析gc日志,人肉分析gc日志有时比较困难,相关图形化或命令行工具可以有效地帮助辅助分析. 通过在tomcat启动脚本中添加相关参数生成gc日志. -verbose.gc开关可显示GC的操作内容. 打开它,可以显示最忙和最空闲收集行为发生的时间、收集前后的内存大小、收集需要的时间等.

IOS分析崩溃日志

- - SegmentFault 最新的文章
  IOS分析定位崩溃问题有很多种方式,但是发布到AppStore的应用如果崩溃了,我们该怎么办呢. 通常我们都会在系统中接入统计系统,在系统崩溃的时候记录下崩溃日志,下次启动时将日志发送到服务端,比较好的第三方有umeng之类的. 今天我们来讲一下通过崩溃日志来分析定位我们的bug.   分析崩溃日志的前提是我们需要有 dYSM文件,这个文件是我们用archive打包时生成的 .xcarchive后缀的文件包.

Windows IIS日志文件分析程序

- bababubuliku - 月光博客
  Windows Server具有事件日志记录的功能,其IIS日志文件里记录了包括下列信息:谁访问了您的站点,访问者查看了哪些内容等等. 通过定期检查这些日志文件,网站管理员可以检测到服务器或站点的哪些方面易受攻击或存在其他安全隐患.   不过,目前的日志分析工具并不是很完善,有些功能并不具备,特别是针对某个URL地址进行攻击的分析并不多,下面是一个VB Script程序,保存为VBS程序后可以在服务器上运行,用于分析和检测IIS日志里针对某个URL地址进行攻击的IP地址.

日志分析方法概述

- jin - 搜索研发部官方博客
日志在计算机系统中是一个非常广泛的概念,任何程序都有可能输出日志:操作系统内核、各种应用服务器等等. 日志的内容、规模和用途也各不相同,很难一概而论. 本文讨论的日志处理方法中的日志,仅指Web日志. 其实并没有精确的定义,可能包括但不限于各种前端Web服务器——apache、lighttpd、tomcat等产生的用户访问日志,以及各种Web应用程序自己输出的日志.

postgresql 日志分析工具pgbadger

- - x-marker的博客
  虽然有zabbix等工具监控着pg数据库,但还是有很多信息不能监控到,所以想通过定期分析pg的日志来掌握数据库的运行状态. pgbadger是一款开源的日志分析工具,采用perl编写,项目地址为: https://github.com/dalibo/pgbadger ,下面就使用简要记录下. 直接git clone或者下载zip包并上传到pg数据库服务器,然后解压:.

jstack Dump 日志文件分析

- - Web前端 - ITeye博客
jstack Dump 日志文件中的线程状态. dump 文件里,值得关注的线程状态有:. Deadlock(重点关注) . 执行中,Runnable   . Waiting on condition(重点关注) . Waiting on monitor entry(重点关注). 暂停,Suspended.

谈日志采集和分析

- - 人月神话的BLOG
本篇为杂谈,只谈一个日志采集分析工具实现过程中的关键点. 对于log文件的采集需要支持分布式的集群,从多个集群机器进行日志采集. 同时日志采集需要对日志文件进行类似流处理的增量实时采集,类似flume工具的一种实现模式. 日志采集不是目的,而基于采集后的日志实时处理,实时处理后的实时分析才是重点. 日志文件本身是一个非结构化的文本文件,但是里面又包含了可以结构化出来的信息,因此对于日志文件是最适合采用mongoDB这种数据库进行存储.