学习
实践
活动
工具
TVP
写文章

apache日志分析脚本

Perl分析Apache/Nginx日志 (2009-6-22) http://www.lazysa.com/2009/05/480.html 功能简述: 统计出日志里一个或多个页面总共访问的次数 分析过程: Apache单个日志文件800M。 然后随意用了Perl写了一个,用了最土鳖的这样的按行分析,最后正则匹配,然后++,速度竟然在40-50秒之间,惊叹!后来经过shucho指点,在正则部分采用了预编译,效果那是相当惊人! CODE: use strict; use Benchmark; my $LOG_FILE = '/usr/local/apache \)/$1/g; 正则 参考 perl-正则 ◆ 常用分析web日志的命令 (2009-6-22) http://www.lazysa.com/2009/05/319.html

22930

apache日志分析简介

apache日志分析做下简单的介绍,主要参考apache官网的Log Files,手册参照 http://httpd.apache.org/docs/2.2/logs.html 一.日志分析 如果 apache的安装时采用默认的配置,那么在/logs目录下就会生成两个文件,分别是access_log和error_log 1.access_log access_log为访问日志,记录所有对apache not exist: /home/htmlfile/tradedata/favicon.ico 这一项首先对错误进行了描述,例如客户端访问一个不存在或路径错误的文件,就会给出404的提示错误 二.实用的日志分析脚本 了解日志的各种定义后,这里分享一下从网上淘来的一些对日志分析的脚本 1.查看apache的进程数 ps -aux | grep httpd | wc -l 2.分析日志查看当天的ip连接数 cat 当然啦,如果想最简单和最直观的分析日志还是用工具,现在网上较流行的工具是awstats,一个基于perl的web日志分析工具,功能很强大也支持IIS等服务器 下载地址 http://awstats.sourceforge.net

25440
  • 广告
    关闭

    【限时福利】腾讯云大数据产品,爆品特惠4.5折起!

    移动推送、BI、ES、云数仓Doris、智能数据分析、数据湖计算DLC,多款产品助您高效挖掘数据潜力,提升数据生产力!

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Nginx和Apache日志格式分析

    1、nginx日志格式 log_format main ‘$remote_addr – $remote_user [$time_local] “$request” ‘ ‘$status $body_bytes_sent ” “$http_x_forwarded_for”‘; $remote_addr 远程请求使用的IP地址 $remote_user 远程登录名(这个可以省略去) $time_local 时间,普通日志时间格式 以及操作系统的信息的 $http_x_forwarded_for 简称XFF头,它代表客户端,也就是HTTP的请求端真实的IP,只有在通过了HTTP 代理或者负载均衡服务器时才会添加该项 更多内容点击这里 2、apache 日志格式 LogFormat “%h %l %u %t \”%r\” %>s %b \”%{Referer}i\” \”%{User-Agent}i\”” combined %h 请求使用的IP地址

    65150

    Apache中access_log日志分析

    当网站出问题时分析日志,第一步一般都不会是看访问日志。但是也不能忽视它,在访问日志中记录了很多的客户信息,如果你有心,可以从这个日志中获得很多有用的信息! 访问日志access_log记录了所有对Web服务器的访问活动。 正如其名字所示,访问日志access_log记录了所有对Web服务器的访问活动。 如果你想让Apache自己找出这个IP 的主机名,可以打开这个开关:HostnameLookups。 (建议最好不要打开,会影响Apache记录服务器日志的速度) 第二项是空白,用一个"-"占位符替代。实际上绝大多数时候这一项都是如此。 但是,对于大多数网站来说,日志文件的大多数记录中这一项仍旧是空白的。 第四项是请求的时间。这个信息用方括号包围,而且采用所谓的"公共日志格式"或"标准英文格式"。

    33830

    日志分析实战之清洗日志小实例1:使用spark&Scala分析Apache日志

    about云日志分析,那么过滤清洗日志。该如何实现。这里参考国外的一篇文章,总结分享给大家。 使用spark分析网站访问日志日志文件包含数十亿行。现在开始研究spark使用,他是如何工作的。 下面是需要注意的: 如果你已经知道如何使用spark并想知道如何处理spark访问日志记录,我写了这篇短的文章,介绍如何从Apache访问日志文件中生成URL点击率的排序 spark安装需要安装hadoop 安装可参考下面文章 about云日志分析项目准备6:Hadoop、Spark集群搭建 http://www.aboutyun.com/forum.php? at org.apache.spark.rdd.HadoopRDD.compute(HadoopRDD.scala:101) at org.apache.spark.rdd.RDD.computeOrReadCheckpoint ) at org.apache.spark.rdd.RDD.iterator(RDD.scala:270) at org.apache.spark.scheduler.ResultTask.runTask

    76380

    python编写分析apache访问日志的脚本

    编写用于分析apache日志的脚本,主要要求如下: 统计每个客户端访问apache服务器的次数 将统计信息通过字典的方式显示出来 分别统计客户端是Firefox和MSIE的访问次数 分别使用函数式编程和面向对象编程的方式实现

    42260

    利用AWStat+JAWStat进行Apache访问日志分析

    Apache日志的几种形式: Apache的访问日志中会记录服务器所处理的所有请求,对apache的访问日志进行分析是一种比较传统的形式。 虽然现在很多第三方的统计分析工具提供了嵌入到页面中的JS脚本来进行分析的方式,但是因为两种分析方式的侧重点不同,目前两种形式的日志分析仍并行存在。 日志分析与服务器产生的日志形式紧密相关,下面就是总结的一些常用的Apache访问日志的形式。 安装完成后,配置好 LogFile/LogFormat等几个必须配置的选项,确保你所要分析Apache访问日志的格式和定义的格式一致,如果已经预定义的几种格式不能满足你的要求,也可以进行自己定义。 %uaquot %otherquota" 这样就确保了AWStats可以正确分析我的日志,然后就执行日志分析命令。

    28820

    配置ELK技术栈来分析apache tomcat日志

    原作者使用9201端口,官方默认是9200,我做了修改 原作者默认你已经安装了apache tomcat 译者博客:http://www.zimug.com 翻译,原文地址:https://aggarwalarpit.wordpress.com /2015/12/03/configuring-elk-stack-to-analyse-apache-tomcat-logs/ 配置ELK技术栈来分析apache tomcat日志 Posted on December 3, 2015 by Arpit Aggarwal 在这篇文章,我将安装ElasticSearch, Logstash and Kibana分析Apache Tomcat服务日志 Kibana 基于web的数据分析,为ElasticSearch仪表板的工具。充分利用ElasticSearch的搜索功能,以秒为单位可视化数据。 (译者注:此安装方法较特殊,建议参考官网方法) 步骤 9: 我们需要让Logstash将数据从tomcat server日志目录送到ElasticSearch。

    45510

    PHP开源Apache日志分析工具收集与比较

    我们知道已经有很多像Awtstat这样的使用perl、c或者c++开发的强大的日志分析工具,但是同样也有很多使用PHP开发并且开源的日志分析软件,今天我就收集了一些与大家分享。 4、Log Miner LogMiner是一个分析Apache或者IIS日志,或者其他支持 combined 或者 W3C扩展日志格式的服务器。 用C写成,日志分析能力非常出众,采用HTML的报表展示形式,是一个非常流行的日志分析工具。 6、TraceWatch 一个PHP+Mysql的日志分析工具,界面不太喜欢,好像就是路径分析比较有特点,其他的感觉还有点慢,就没什么了。 Technorati 标签: 日志,Apache,Log,PHP,开源 参考资料: 1、CrunchTools 2、LogAnalyzer 3、Jawstats 4、Awstat 5、Web Analytics

    1.2K20

    详解如何使用Spark和Scala分析Apache访问日志

    访问日志分析器 首先我们需要使用Scala编写一个对Apache访问日志分析器,所幸已经有人编写完成,下载Apache logfile parser code。 访问日志accesslog.small: scala> val log = sc.textFile("accesslog.small") 14/03/09 11:25:23 INFO MemoryStore Apache日志 我们可以分析Apache日志中404有多少个,创建方法如下: def getStatusCode(line: Option[AccessLogRecord]) = { line match { case Some(l) => l.httpStatusCode case None => "0" } } 其中Option[AccessLogRecord]是分析器的返回值。 getStatusCode(p.parseRecord(line)) == "404").map(getRequest(_)).distinct distinctRecs.foreach(println) 总结 对于访问日志简单分析当然是要

    32320

    如何使用MySQL数据库来分析Apache日志

    一、定义Apache日志格式 在将Apache日志导入到MySQL数据库之前,要确保Apache日志格式是我们可以识别的。如何才能保证这个格式是可以的识别的呢?那不如我们事先定义好一套日志格式。 你可以将以下内容放到Apache配置文件中,更改Apache日志格式,使MySQL更容易读取: LogFormat “”%h”,%{%Y%m%d%H%M%S}t,%>s,”%b”,”%{Content-Type 对Apache有一定了解的朋友很容易看的明白的。如果你是一个Apache的新手,那么去读一下Apache的帮助文档,看看日志格式的定义方式,这是一件非常有益的事情。 二、把Apache日志导入MySQL数据库 根据我们指定的格式生成了日志后,要想把它导入到MySQL中就简单了。 三、对Apache日志进行分析 我们已经将Apache日志导入到MySQL数据库中的tbI_name这张表了,现在就可以使用SQL语句来对Apache日志事件进行分析、统计等工作了。

    9530

    Apache日志变量详解

    Apache日志格式字符串的含义 %% 百分号(Apache2.0.44或更高的版本) %a 远端IP地址 %A 本机IP地址 %B 除HTTP头以外传送的字节数 %b 以CLF格式显示的除HTTP头以外传送的字节数 %t 时间,用普通日志时间格式(标准英语格式) %{format}t 时间,用strftime(3)指定的格式表示的时间。(默认情况下按本地化格式) %T 处理完请求所花时间,以秒为单位。

    22020

    11.21 Apache访问日志

    访问日志目录概要 访问日志记录用户的每一个请求 vim /usr/local/apache2.4/conf/httpd.conf //搜索LogFormat LogFormat "%h %l %u %t /logs/123.com-access_log 访问日志 访问日志,就是在浏览器中输入网址,每一次访问,每一次请求,都会生成一个日志 查看apache2.4的日志 [root@hf-01 ~]# ls abc.com-error_log error_log [root@hf-01 ~]# 查看111.com访问日志 日志里面的HEAD都是curl命令导致的 日志里面的GET就是不加 -I 查看日志文件 会看到日志文件丰富了 [root@hf-01 ~]# tail ! 再来查看日志文件,会看到生成了{Referer}i [root@hf-01 ~]# tail -5 /usr/local/apache2.4/logs/111.com-access_log 192.168.202.130

    36390

    手把手教你,嘴对嘴传达------Apache日志管理日志(rotatelogs分割工具、AWStats日志分析

    Apache日志管理 日志文件的产生 服务安装后,不会生成日志文件不会产生 服务启动后,生成日志文件 访问服务后,日志文件会生成内容 一、日志分割 随着网站的访问量增大,默认情况下Apache的单个日志文件也会越来越大 日志文件占用磁盘空间很大 查看相关信息不方便 对日志文件进行分割 Apache自带rotatelogs分割工具实现 第三方工具cronolog分割 二、rotatelogs分割工具 配置网站的日志文件转交给 cronolog 旨在和一个Web服务器一起使用,如Apache、Nginx 第一步:rpm安装一下cronolog软件(yum也可以安装) [root@sheng opt]# rpm -ivh cronolog restart httpd [root@sheng httpd]# ls access_log error_log www.yjs.com.error_2020080610.log 四、AWStats日志分析 1、 AWStats概述 perl语言(骆驼语言)开发的一款开源日志分析系统 可用来分析Apache,Samba,vsftpd,IIS等服务器的访问日志 信息结合crond等计划任务服务,可对日志内容定期进行分析

    47120

    Apache用户认证,域名跳转,Apache访问日志

    笔记内容: 11.18 Apache用户认证 11.19/11.20 域名跳转 11.21 Apache访问日志 笔记日期:2017.10.09 11.18 Apache用户认证 ? 生成用户密码文件: /usr/local/apache2.4/bin/htpasswd -c -m /data/.htpasswd user111 ? 11.21 Apache访问日志 ? 访问日志记录用户的每一个访问、请求,日志文件在/usr/local/apache2.4/logs/目录下: ? 刚刚我们做实验访问的是111.com,所以日志文件是以111.com开头的,查看日志内容: ? 这个日志是可以定义它的格式的,在apache的主配置文件里定义: ? 然后使用curl命令和浏览器进行访问一下,然后再查看一下日志文件会发现最新的两行内容格式不一样了: ?

    1.1K20

    Apache用户认证,域名跳转,Apache访问日志

    Apache用户认证: ?   11.21 Apache访问日志: ? 日志文件所在位置: access_log 表示访问日志     error_log 表示错误日志 [root@aminglinux ~]# ls /usr/local/apache2.4/logs 111 系统自带日志格式: vim /usr/local/apache2.4/conf/httpd.con ? local/apache2.4/bin/apachectl graceful 查看更改后的日志样式: [root@aminglinux ~]# cat /usr/local/apache2.4/logs

    1.2K50

    Apache优化——日志管理 原

    11.22 访问日志不记录静态文件 编辑虚拟主机配置文件“httpd-vhosts.conf”:   [root@adailinux ~]# vim /usr/local/apache2.4/conf ---- 扩展: apache日志记录客户端请求的域名   正常情况下,根本就没有必要记录这一项,毕竟咱们大都根据虚拟主机来设置相应的访问日志,但也有个别的情况,比如 ServerName *.abc.com apache只记录指定URI的日志 需求: 把类似请求 www.aaa.com/aaa/... 这样的请求才记录日志。   apache日志中记录代理IP以及真实客户端IP   默认情况下log日志格式为:   LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{ 说明: rotatelogs是Apache切割日志的工具;-l表示使用系统(CST=Chinese time)时间,如果加-l选项,将以默认的(UTC)时间为准;日志文件名“%Y%m%d”表示年月日;

    27430

    Apache日志配置远程Syslog采集

    start httpd 查看httpd日志 [root@node2 ~]# cd /var/log/httpd [root@node2 httpd]# ll total 8 -rw-r--r-- 1 /var/spool/rsyslog $PrivDropToGroup adm ## Apache访问日志文件路径,根据实际情况修改: $InputFileName /var/log/httpd/access.log 25000 $InputRunFileMonitor ## Apache错误日志文件路径,根据实际情况修改: $InputFileName /var/log/httpd/error.log $InputFileTag 25000 $InputRunFileMonitor ## 指定日志格式模板: $template BiglogFormatApache,"%msg%\n" ## 注意syslog日志服务器接收地址 == 'apache-error' then ~ [root@node2 ~]# 4、重启Rsyslog服务,日志采集开始工作 [root@node2 ~]# systemctl restart rsyslog

    23710

    处理Apache日志的Bash脚本

    去年一年,我写了将近100篇网络日志。 现在这一年结束了,我要统计"访问量排名",看看哪些文章最受欢迎。(隆重预告:本文结尾处将揭晓前5名。) ? 以往,我用的是AWStats日志分析软件。 下面就是我的日志分析脚本,虽然它还不是通用的,但是我相信里面用到的命令,足以满足一般的日志分析需求,同时也是很好的学习Bash的实例。如果下面的每一个命令你都知道,我觉得可以堪称熟练使用Bash了。 我的网络服务器软件是Apache,它会对每一个http请求留下记录,就像下面这一条:   203.218.148.99 - - [01/Feb/2011:00:02:09 +0800] "GET /blog 但是,如果只是简单的日志分析,我觉得Bash脚本是最合适的工具。 单个日志分析就完成了。 五、月度汇总排名 经过上一步之后,1月份的31个日志文件,生成了31个对应的分析结果文件。为了汇总整个月的情况,必须把这31个结果文件合并。

    47550

    Apache自定义日志格式

    1.Apache日志参数说明: Apache日志格式字符串的含义 %% 百分号(Apache2.0.44或更高的版本) %a 远端IP地址 %A 本机IP地址 %B 除HTTP头以外传送的字节数 2.自定义Apache日志格式: 一些常见的格式串: 通用日志格式(CLF): “%h %l %u %t \”%r\” %>s %b” 带虚拟主机的通用日志格式: “%v %h %l %u %t 日志格式: “%{Referer}i -> %U” Agent(Browser)日志格式: “%{User-agent}i” 自定义Apache日志,则在http.conf中加入如下字段: LogFormat “%h %l %u %t %T \”%r\” %>s %b \”%{Referer}i\” \”%{User-Agent}i\”” common 说明:一般Apache默认的格式为“LogFormat 后面“common”字段很重要,它代表是自己定义的,如果不加些字段,则添加的自定义日志不起作用。

    11420

    扫码关注腾讯云开发者

    领取腾讯云代金券