Apache日志管理和统计分析知识

 更新时间:2016年04月23日 15:14:20   投稿:mdxy-dxy  
Apache服务器具备强大的日志功能,管理员可以方便、准备、及时地了解服务器状况;可以更好地防范黑客的攻击
 对于所有公司或icp来说,在保证网站稳定正常运行外,还需要了解网站访问量和分析报表,这对于了解和监控网站的运行状态,对于提高网站的服务能力和服务水平似乎必不可少的。通过对web服务器的日志文件进行分析和统计,能够有效的掌握系统运行的情况及站点内容的被访问情况,加强对整个站及其内容的维护与管理;

Apache服务器具备强大的日志功能,管理员可以方便、准备、及时地了解服务器状况;可以更好地防范黑客的攻击。

Apache规定了4类日志,分别为:错误日志、访问日志、传输日志以及Cookie日志。其中Apache2.0默认设置的有错误日志和访问日志,如果需要分析其他日志,则需进行相关配置。

1.错误日志

错误日志是Apache服务器的标准日志文件,记录了服务器运行期间遇到的各种错误和一些服务器何时启动等的信息。

在这个文件中,管理员可以准确、清晰地看到各种错误提示:文件没找到、用户认证错误或者PHP、CGI的语法错误等。通过这些准确的错误描述,管理员就可以较为顺利地解决这些问题了。

2.配置访问日志

通过Apache的访问日志可以了解到访问服务器的相关信息,比如,有哪些人访问了服务器,都访问了哪些内容等相关信息。Apache服务器一旦启动就会自动生成访问日志(/var/log/httpd/access_log文件)

管理web网站需要监视其速度、web内容传送,服务器每天的吞吐量,和web网站的外来访问,了解网站各个页面
的访问情况,根据页面的点击率来改善网页的内容和质量,提高内容的可读性,跟踪包含有商业交易的步骤以及管理web网站幕后的数据;

1、日志的分类
apache的标准中规定了4类日志;
*错误日志
*访问日志
*传输日志
*cookie日志
 其中传输日志和cookie日志在apache2.0时已经取消了,只讨论错误日志和访问日志;
2、日志相关配置指令;
apache中有如下4条与日志相关的配置指令;
指令                 格式                                                                说明
-----------------------------------------------------------------------------
ErrorLog        错误日志文件名;                                          指定错误日志存放路径
-----------------------------------------------------------------------------
LogLevel         错误日志记录等级;                                    指定错误日志的记录等级
-----------------------------------------------------------------------------
LogFormat      记录格式说明串,格式昵称;                     为一个日志记录格式命名
-------------------------------------------------------------------------------
CustomLog    访问日志文件名      格式昵称                   指定访问日志存放路径和记录格式;
                         “|程序名 访问日志文件名”格式昵称       指定访问日志有指定程序生成并制定格式(管道日志)
-------------------------------------------------------------------------------
前两条是配置错误日志,后两条是配置访问日志
 
3、配置错误日志;
1)、apache默认的错误日志配置
 ErrorLog "logs/error_log"
LogLevel warn
配置错误日志只需要说明日志文件的存放路径和日志记录登记即可;
2)、日志记录等级;

紧急程度   等级      说明
-----------------------------------------------------------------
1         Emerg          出现紧急情况时的系统不可用,如系统宕机等
------------------------------------------------------------------
2         A lert             需要立即引起注意的情况
------------------------------------------------------------------
3        Crit危险情况的警告
-----------------------------------------------------------------
4         Error               除了emerg、alert、crit的其他错误;
--------------------------------------------------------------
5         warn         警告信息
---------------------------------------------------------------
6         notice       需要引起注意的情况,但不如error warn重要
------------------------------------------------------------------
7        info         值得报告的一般信息
-------------------------------------------------------------------
8         debug        由运行与debug模式的程序所产生的消息
---------------------------------------------------------------
 
如果指定了登记warn,那么就记录紧急程度为1至5的所有信息;

[Fri May 07 10:32:00 2010] [error] [client 192.168.0.10] File does not exist: /usr/local/apache2/htdocs/favicon.ico
[Fri May 07 10:32:03 2010] [error] [client 192.168.0.10] File does not exist: /usr/local/apache2/htdocs/favicon.ico

每一行的错误日志都有
日期和时间         错误等级            错误消息

4、配置访问日志
1)、访问日志的分类;
为了便于分析apache的访问日志,apace的默认配置文件中,按记录的信息不同,将访问日志分为4类;并由LogFormat指令定义了昵称
格式分类               格式昵称           说明
--------------------------------------------------------------------
普通日志格式      common          大多数日志分析软件都支持这种格式
(common log format.CLF)
--------------------------------------------------------------------
参考日志格式       referer             记录客户访问站点的用户身份
(referer log format)
--------------------------------------------------------------------
代理日志格式      agent               记录请求的用户代理
(agent log format)
--------------------------------------------------------------------
综合日志格式       combined        综合以上三种日志信息
(combined log format)
--------------------------------------------------------------------
  由于综合日志格式简单地结合了3种日志信息,所以在配置访问日志时,要么使用3个文件分别记录,要么使用一个综合文件记录。
 5、日志滚动
 要使系统重新使用空的日志文件 ,可以执行如下命令
#cd /usr/loca/apache2/log
# mv error_log error_log.01
#mv access_log access_log.01
当重启apache时新的error_log和access_log
下面我们使用日志分析软件webalizer来统计
1)、安装webalizer
# yum install webalizer
# rpm -qa |grep webalizer
webalizer-2.01_10-30.1
# rpm -qa |grep webalizer
webalizer-2.01_10-30.1
[root@dns logs]# rpm -ql webalizer
/etc/cron.daily/00webalizer
/etc/httpd/conf.d/webalizer.conf
/etc/webalizer.conf
/usr/bin/webalizer
/usr/bin/webazolver
/usr/share/doc/webalizer-2.01_10
/usr/share/doc/webalizer-2.01_10/README
/usr/share/man/man1/webalizer.1.gz
/var/lib/webalizer
*生成的HTML文件存放在下面的路径
/var/www/usage
/var/www/usage/msfree.png
/var/www/usage/webalizer.png

2)、配置webalizer
#ln -s /var/www/usage /usr/local/www/usage
# webalizer /usr/local/apache2/logs/access_log
http://ip/usage

相关文章

  • Linux 命令查询小程序中的 WePY 云开发实践

    Linux 命令查询小程序中的 WePY 云开发实践

    这篇文章主要介绍了云开发与 WePY,快速实现 Linux 命令查询小程序,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-04-04
  • Linux系统下Nginx支持ipv6配置的方法

    Linux系统下Nginx支持ipv6配置的方法

    这篇文章主要介绍了Linux系统下Nginx支持ipv6的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12
  • Apache Doris的Bitmap索引和BloomFilter索引使用及注意事项

    Apache Doris的Bitmap索引和BloomFilter索引使用及注意事项

    bitmap index是一种位图索引,是一种快速数据结构,能够加快查询速度,BloomFilter索引也是以Block为粒度创建的,这篇文章主要介绍了Apache Doris的Bitmap索引和BloomFilter索引使用,需要的朋友可以参考下
    2022-09-09
  • Gunicorn运行与配置方法

    Gunicorn运行与配置方法

    这篇文章主要介绍了Gunicorn运行与配置方法,使用pre-fork worker模式,具有使用非常简单,轻量级的资源消耗,以及高性能等特点。对此感兴趣的朋友跟随小编一起看看吧
    2019-08-08
  • CentOS 7 虚拟机无法开机问题的快速解决方法

    CentOS 7 虚拟机无法开机问题的快速解决方法

    这篇文章主要介绍了CentOS 7 虚拟机无法开机问题的快速解决方法,非常不错,具有一定的参考借鉴价值,感兴趣的朋友一起看看吧
    2016-11-11
  • Apache2.4.2编译安装2个常见错误和解决方法

    Apache2.4.2编译安装2个常见错误和解决方法

    这篇文章主要介绍了Apache2.4.2编译安装2个常见错误和解决方法,需要的朋友可以参考下
    2014-06-06
  • Linux下如何安装Logstash

    Linux下如何安装Logstash

    这篇文章主要介绍了Linux下如何安装Logstash问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • apache使用.htaccess文件实现屏蔽wget下载网站内容

    apache使用.htaccess文件实现屏蔽wget下载网站内容

    wget是一个从网络上自动下载文件的自由工具,支持通过HTTP、HTTPS、FTP三个最常见的TCP/IP协议下载,并可以使用HTTP代理。wget名称的由来是“World Wide Web”与“get”的结合。
    2014-07-07
  • Ubuntu 安装cuda10.1驱动的实现步骤

    Ubuntu 安装cuda10.1驱动的实现步骤

    这篇文章主要介绍了Ubuntu 安装cuda10.1驱动的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • Linux系统 为命令配置别名的方法

    Linux系统 为命令配置别名的方法

    这篇文章主要介绍了Linux系统 为命令配置别名的方法,需要的朋友可以参考下
    2018-07-07

最新评论