网站日志实时分析工具 GoAccess

标签: Linux | BSD | Solaris apache log monibor nginx | 发表时间:2014-02-28 19:37 | 作者:vpsee
出处:http://www.vpsee.com

GoAccess 是一款开源的网站日志实时分析工具。GoAccess 的工作方式很容易理解,就是读取和解析 Apache/Nginx/Lighttpd 的访问日志文件 access log,然后以更友好的方式把统计信息显示出来。统计的内容包括:访问概况、动态页面请求、静态页面请求(如图片、样式表、脚本等)、访客排名,访客使用的操作系统,访客使用的浏览器,来路域名,404 错误,搜索爬虫,搜索关键词等等。

GoAccess 的性能也不赖,据官方测试,在一台 Intel Xeon CPU @ 2.40ghz CPU, 2GB 内存的机器上处理日志文件的速度是97000行每秒。

Linux 发行版本自带的 GoAccess 一般太老,比如 Ubuntu 12.04 带的是 0.4.2,Ubuntu 13.10 带的是 0.5,而最新的 goaccess 版本是 0.7.1. 所以类似不常用的软件,Linux 发行官方关注也少,为了使用最新的版本,最好采用源代码安装的方式。

在 CentOS 6.5 上安装编译 GoAccess 时需要的工具和库:

# yum groupinstall 'Development Tools'
# yum install glib2 glib2-devel ncurses-devel

在 Ubuntu 12.04 上安装编译 GoAccess 时需要的工具和库:

$ sudo apt-get install build-essential
$ sudo apt-get install libglib2.0-dev libncursesw5-dev

下载 GoAccess 的源代码、编译和安装:

$ wget http://downloads.sourceforge.net/project/goaccess/0.7.1/goaccess-0.7.1.tar.gz
$ tar -xzvf goaccess-0.7.1.tar.gz
$ cd goaccess-0.7.1/
$ ./configure --enable-utf8
$ make
$ sudo make install

运行 GoAccess,选择 NCSA Combined Log Format:

$ /usr/local/bin/goaccess -f /var/log/apache2/access.log


                  +--------------------------------------------------+
                  | Log Format Configuration                         |
                  | [SPACE] to toggle - [ENTER] to proceed           |
                  |                                                  |
                  | [ ] Common Log Format (CLF)                      |
                  | [ ] Common Log Format (CLF) with Virtual Host    |
                  | [x] NCSA Combined Log Format                     |
                  | [ ] NCSA Combined Log Format with Virtual Host   |
                  | [ ] W3C                                          |
                  | [ ] CloudFront (Download Distribution)           |
                  |                                                  |
                  | Log Format - [c] to add/edit format              |
                  | %h %^[%d:%^] "%r" %s %b "%R" "%u"                |
                  |                                                  |
                  | Date Format - [d] to add/edit format             |
                  | %d/%b/%Y                                         |
                  +--------------------------------------------------+

界面如下:

GoAccess

GoAccess 还可以生成 HTML 格式的报告

$ /usr/local/bin/goaccess -f /var/log/apache2/access.log -a > report.html

GoAccess

相关 [网站 日志 实时] 推荐:

网站日志实时分析工具 GoAccess

- - vpsee.com
GoAccess 是一款开源的网站日志实时分析工具. GoAccess 的工作方式很容易理解,就是读取和解析 Apache/Nginx/Lighttpd 的访问日志文件 access log,然后以更友好的方式把统计信息显示出来. 统计的内容包括:访问概况、动态页面请求、静态页面请求(如图片、样式表、脚本等)、访客排名,访客使用的操作系统,访客使用的浏览器,来路域名,404 错误,搜索爬虫,搜索关键词等等.

日志实时收集之FileBeat+Kafka

- - lxw的大数据田地
之前,我们的某一个业务用于实时日志收集处理的架构大概是这样的:. 在日志的产生端(LogServer服务器),都部署了FlumeAgent,实时监控产生的日志,然后发送至Kafka. 经过观察,每一个FlumeAgent都占用了较大的系统资源(至少会占用一颗CPU 50%以上的资源). 而另外一个业务,LogServer压力大,CPU资源尤其紧张,如果要实时收集分析日志,那么就需要一个更轻量级、占用资源更少的日志收集框架,于是我试用了一下Filebeat.

使用elasticsearch+simple_flow搭建实时日志搜索系统

- - ITeye博客
    在实际的系统中,我们经常会进行分布式的系统部署,但是这样会导致一个问题,系统日志也被分散开了,导致根据日志进行错误定位不太方便,所以,利用simple_flow实时流的特点,再配合elasticsearch建立索引,搭配构建一个实时日志搜索系统.具体流程图如下:. 1.启动elasticsearch, 这个参考官方文档  http://www.elasticsearch.org/.

安装 log.io 实时日志监控工具

- - vpsee.com
日志是个好东西,对技术人员来说写日志能纪录成长,分享经验;对机器来说纪录日志能及时发现错误,为日后的排错提供信息. 如果还在一台机器上用 tail -f 监听单个日志或者 用 multitail 监听多个日志也太 out 了,我们需要一种工具能纪录上百台机器、不同类型的日志,并最好能汇集到一个界面里方便查看,最好还是实时的.

ELK(ElasticSearch, Logstash, Kibana)搭建实时日志分析平台

- - 编程语言 - ITeye博客
在搜索ELK资料的时候,发现这篇文章比较好,于是摘抄一小段:. 以下内容来自: http://baidu.blog.51cto.com/71938/1676798. 日志主要包括系统日志、应用程序日志和安全日志. 系统运维和开发人员可以通过日志了解服务器软硬件信息、检查配置过程中的错误及错误发生的原因.

Nginx日志实时监控、排查整理工具 - ngxtop

- - VPS侦探
要实时查看日志文件变动我们首先想到的应该是tail -f /path/to/log,但是这样看网站的访问日志是相当崩溃的,好一点可以写个脚本进行筛选,但是大部分人还是不擅长的,今天 VPS侦探就推荐给大家一个Nginx日志工具: ngxtop. 说起top工具有很多如: iftop、htop、ntop等,今天说的ngxtop功能也毫不逊色,不仅能实时监控Nginx日志的访问还可以对以前的日志进行排查整理.

实时收集Storm日志到ELK集群

- - 编程语言 - ITeye博客
我们的storm实时流计算项目已经上线几个月了,由于各种原因迟迟没有进行监控,每次出现问题都要登录好几台机器,然后使用sed,shell,awk,vi等各种命令来查询原因,效率非常低下,而且有些统计是没法做的,所以很有必要对storm本身相关的日志以及我们运行在storm上面的任务的日志做一个统一的日志收集,分析,查询,统计平台.

使用Flume+Kafka+SparkStreaming进行实时日志分析

- - CSDN博客推荐文章
每个公司想要进行数据分析或数据挖掘,收集日志、ETL都是第一步的,今天就讲一下如何实时地(准实时,每分钟分析一次)收集日志,处理日志,把处理后的记录存入Hive中,并附上完整实战代码. 思考一下,正常情况下我们会如何收集并分析日志呢. 首先,业务日志会通过Nginx(或者其他方式,我们是使用Nginx写入日志)每分钟写入到磁盘中,现在我们想要使用Spark分析日志,就需要先将磁盘中的文件上传到HDFS上,然后Spark处理,最后存入Hive表中,如图所示:.

实时分布式日志系统plumelog落地

- - 掘金 架构
这是我参与「掘金日新计划 · 4 月更文挑战」的第25天, 点击查看活动详情. 无代码入侵的分布式日志系统,基于log4j、log4j2、logback搜集日志,设置链路ID,方便查询关联日志. 基于elasticsearch作为查询引擎. 全程不占应用程序本地磁盘空间,免维护;对于项目透明,不影响项目本身运行.

理解数据库中的undo日志、redo日志、检查点 | 乐天的个人网站

- -
数据库存放数据的文件,本文称其为data file. 数据库的内容在内存里是有缓存的,这里命名为db buffer. 某次操作,我们取了数据库某表格中的数据,这个数据会在内存中缓存一些时间. 对这个数据的修改在开始时候也只是修改在内存中的内容. 当db buffer已满或者遇到其他的情况,这些数据会写入data file.