安装日志轮询工具cronolog:

[root@bqh- tools]# tar xf cronolog-1.6..tar.gz
[root@bqh- tools]# cd cronolog-1.6.
[root@bqh- cronolog-1.6.]# ./configure
make
make install
[root@bqh- cronolog-1.6.]# ll /usr/local/sbin/cronolog
-rwxr-xr-x root root 7月 : /usr/local/sbin/cronolog

按天轮询:(生产环境常见用法,推荐使用):

CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/access_blog_%Y%m%d.log" combined
CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/access_bbs_%Y%m%d.log" combined

注:按天记录日志,日志不会自动覆盖。

按小时轮询:(较常见用法)

CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/access_blog_%Y%m%d%H.log" combined
CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/access_bbs_%Y%m%d%H.log" combined

注:适合短时间分析的apache详细日志信息。

按周轮询:(较常见用法)

CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/access_blog_%w.log" combined
CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/access_bbs_%w.log" combined
----------------------------------------------------------------------------------------------↓↓↓分目录按周记录日志
CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/%w/access_blog_%w.log" combined
CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/%w/access_bbs_%w.log" combined

注:每周循环覆盖;如果需要保留少量日志,供sa等使用,不作为特殊其他信息分析等,可以按周轮询,免去担心空间问题。

按月轮询:

CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/access_blog_%Y%m.log" combined
CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/access_bbs_%Y%m.log" combined

按天+按小时轮询:

CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/access_blog_%Y%m%d.log" combined
CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/access_blog_%Y%m%d%H.log" combined
CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/access_bbs_%Y%m%d.log" combined
CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/access_bbs_%Y%m%%d%H.log" combined

.....可以自由组合来轮询日志。

下面以按天轮询日志的测试配置:

[root@bqh- extra]# vim httpd-vhosts.conf

......以上省略
<VirtualHost *:>
ServerAdmin @qq.com
DocumentRoot "/var/html/blog"
ServerName blog.bqh123.com
ServerAlias bg.bqh123.com
ErrorLog "logs/blog-error_log"
CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/access_blog_%Y%m%d.log" combined
</VirtualHost> <VirtualHost *:>
ServerAdmin @qq.com
DocumentRoot "/var/html/bbs"
ServerName bbs.bqh123.com
ServerAlias bs.bqh123.com
ErrorLog "logs/bbs-error_log"
CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/access_bbs_%Y%m%d.log" combined
</VirtualHost>

 刷新配置:

[root@bqh- extra]# vim httpd-vhosts.conf
[root@bqh- extra]# ../../bin/apachectl -t
Syntax OK
[root@bqh- extra]# ../../bin/apachectl graceful

访问测试,并查看日志:

[root@bqh- logs]# ll
总用量
-rw-r--r-- root root 7月 : access_bbs_20190715.log
-rw-r--r-- root root 7月 : access_blog_20190715.log
-rw-r--r-- root root 7月 : access_log
-rw-r--r-- root root 7月 : bbs-access_log
-rw-r--r-- root root 7月 : bbs-error_log
-rw-r--r-- root root 7月 : blog-access_log
-rw-r--r-- root root 7月 : blog-error_log
srwx------ daemon root 7月 : cgisock.
srwx------ daemon root 7月 : cgisock.
srwx------ daemon root 7月 : cgisock.
-rw-r--r-- root root 7月 : error_log
-rw-r--r-- root root 7月 : httpd.pid
[root@bqh- logs]# tail - ./access_blog_20190715.log
192.168.0.105 - - [/Jul/::: +] "GET / HTTP/1.1" "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0"
[root@bqh- logs]# tail - ./access_bbs_20190715.log
192.168.0.105 - - [/Jul/::: +] "GET / HTTP/1.1" "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0"

apache不记录图片的日志:

程序配置:
<FilesMatch “\.(css|js|gif|jpg|ico|swf)”>
SetEnv IMAG
</FilesMatch>
日志配置:
<VirtualHost *:>
ServerAdmin @qq.com
DocumentRoot "/var/html/bbs"
ServerName bbs.bqh123.com
ServerAlias bs.bqh123.com
ErrorLog "logs/bbs-error_log"
CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/access_bbs_%Y%m%d.log" combined env=!dontlog

RS服务器不记录负载均衡健康检查日志(check.html):

<VirtualHost *:>
ServerAdmin @qq.com
DocumentRoot "/var/html/bbs"
ServerName bbs.bqh123.com
ServerAlias bs.bqh123.com
SetEnvIf Request_URI “^/check\.html$” dontlog
ErrorLog "logs/bbs-error_log"
CustomLog "|/usr/local/sbin/cronolog /application/apache/logs/access_bbs_%Y%m%d.log" combined env=!dontlog
</VirtualHost>

统计apache日志单IP访问请求数排名:

[root@bqh- logs]# awk '{print $1}' ./access_bbs_20190715.log |sort|uniq -c|sort -rn -k1
11 192.168.0.105
9 192.168.0.200
4 192.168.0.88
3 192.168.0.109
2 192.168.0.107
1 192.168.0.10
192.168.0.96
192.168.0.5
192.168.0.222
192.168.0.15
192.168.0.110
[root@bqh- logs]# awk '{++s[$1]} END {for (key in s) print s[key],key}' access_bbs_20190715.log |sort -rn -k1
192.168.0.105
192.168.0.200
192.168.0.88
192.168.0.109
192.168.0.107
192.168.0.10
192.168.0.96
192.168.0.5
192.168.0.222
192.168.0.15
192.168.0.110

Apache日志轮询Cronolog安装及简单用法的更多相关文章

  1. apache日志轮询技术

    1.首先先下载安装apache的日志轮询工具cronolog: wget http://cronolog.org/download/cronolog-1.6.2.tar.gz .tar.gz cd c ...

  2. linux Apache 日志轮询

    安装日志轮询工具 cronolog [root@Nagios-Server tools]# wgethttp://cronolog.org/download/cronolog-1.6.2.tar.gz ...

  3. apache 日志轮询 linux cronolog

    Linux下运行的Web服务器Apache,默认日志文件是不分割的,一个整文件既不易于管理,也不易于分析统计.安装cronolog后,可以将日志文件按时间分割,易于管理和分析. cronolog安装配 ...

  4. Nginx的继续深入(日志轮询切割,重写,负载均衡等)

    Nginx的访问日志轮询切割 通常什么情况Nginx会把所有的访问日志生成到一个制定的访问日志文件access.log里面,但时间一长,日志个头很大不利于日志的分析和处理. 有必要对Nginx日志进行 ...

  5. nginx日志配置,以及日志轮询

    一.为nginx配置错误日志 Nginx错误日志是调试nginx的重要手段,属于核心功能模块的参数(ngx_core_module)该参数名字为err_log,是放在Main区块中全局配置 err_l ...

  6. Nginx 访问日志轮询切割

    Nginx 访问日志轮询切割脚本 #!/bin/sh Dateformat=`date +%Y%m%d` Basedir="/application/nginx" Nginxlog ...

  7. 源码安装最新版keepalived,剥离日志出来并配置日志轮询

    安装 yum install -y gcc openssl-devel popt-devel ipvsadm libnl3-devel net-snmp-devel libnl libnl-devel ...

  8. logrotate关于日志轮询和分割

    如果你的是源码包安装的服务,那么对于Linux服务器上的一些服务在运行当中产生的日志很重要,可以判断你的服务是否有异常等,但源码包安装的日志是没有日志的轮询或者说是切割能力的, 所以你就需要用到bas ...

  9. logrotate 日志轮询(转存)

    1.建立/etc/logrotate.d/nginx文件[1] vim /etc/logrotate.d/nginx 2.写入如下内容: /var/log/nginx/*log { daily rot ...

随机推荐

  1. 全面系统Python3入门+进阶-1-6 python能做些什么?

    结束

  2. ES6深入浅出-9 Promise-1.回调与回调地狱

    promise 回调 把fun的调用写在另外一个函数里 fun()的调用在fn2这个函数里面.也是调用了函数.这种函数的调用形式叫做回调. A打电话给C找B.但是B不在,C说等B在的时候让B给A回电话 ...

  3. 【设备问题】罗技M590鼠标无法连接Macbook Pro问题解决

    问题现象 罗技蓝牙鼠标连接的时候一直显示连接中,但是一直连接不上. 解决方法 长按那个切换模式的按钮,重置下,再点击连接,显示能够连接成功.

  4. RabbitMQ官方教程一Hello World(GOLANG语言实现)

    介绍 RabbitMQ是消息中间件:它接受并转发消息. 您可以将其视为邮局系统:将要发送的邮件放在邮箱中时, 可以确保邮递员最终将邮件传递给收件人. 以此类推,RabbitMQ是一个邮箱,一个邮局和一 ...

  5. CF1197D Yet Another Subarray Problem

    思路: 使用动态规划,在经典的最大子段和解法基础上进行扩展.dp[i][j]表示以第i个数为结尾,并且长度模m等于j的所有子段的最大cost. 实现: #include <bits/stdc++ ...

  6. Samba访问控制smb.conf

    访问控制 Samba的访问控制通过hosts allow(配置允许访问的客户端).hosts deny(配置拒绝访问的客户端)两个参数实现. 在Samba中使用hosts allow.hosts de ...

  7. 干货 | 20多门AI网络课程资源(附链接+PDF)

    现如今,在火爆的人工智能领域,面临的最窘迫的问题是越来越庞大的产业规模和国家每年约500万的相关人才需求的矛盾.广阔的发展前景.巨大的人才缺口和令人心动的行业薪资,让越来越多的年轻人选择了进入这一行业 ...

  8. PHP mbstring通过多字节字符串扩展处理中文查找、计算问题

    最近有个需求有到了mbstring相关的函数进行中文处理,如下: mb_strpos mb_strlen 过程中遇到一点比较奇怪的问题,及在本地环境运行没有问题 但我们生产环境是2台服务器,其中一台正 ...

  9. PHP curl模拟ip和来源进行访问

    PHP curl模拟ip和来源进行访问<pre> public function moniurlqingqiu() { $ch = curl_init(); $curlurl = &quo ...

  10. BOOT目录磁盘占用满处理

    背景:Ubuntu:16.04 查看已安装启动镜像 dpkg --get-selections |grep linux-image 这里会列出目前已经安装的启动镜像,一般分两种,一种状态为“insta ...