为了方便分析网站的日志,需要将apache的日志按周来分割,网上搜索了下,cronolog可以完成这个功能,实际操作了下,操作过程中参考了这篇文章(http://www.lampbo.org/linux-xuexi/linux-sever/apache-logs-rotate.html),在此,谢谢作者。

注:作者原文对于httpd.conf的日志的配置中cronolog的文件地址配置有误,请参照我下面的操作记录进行操作。

下面是操作记录

#下载cronolog
wget http://cronolog.org/download/cronolog-1.6.2.tar.gz
#解压缩
tar -xzvf cronolog-1.6..tar.gz
#进入目录
cd cronolog-1.6.
#列出所有文件
ll
#configure
./configure --prefix=/usr/local/cronolog
#发现缺很多包,安装之
yum install gcc cc aclocal autoconf automake autoheader makeinfo
#再次configure
./configure --prefix=/usr/local/cronolog
#make
make
#安装
make install
#进入httpd的配置文件目录
cd /etc/httpd/conf
#备份httpd的配置文件
cp httpd.conf httpd.conf.
#编辑httpd的配置文件
vim httpd.conf

httpd.conf中修改如下两个部分:

#默认的错误日志,注释掉它
#ErrorLog logs/error_log #cronolog的配置,我们需要新增的
ErrorLog "|/usr/local/cronolog/sbin/cronolog /var/log/httpd/error_%Y_%W.log" #默认配置的日志
#CustomLog logs/access_log combined
#cronolog的配置,我们需要新增的
CustomLog "|/usr/local/cronolog/sbin/cronolog /var/log/httpd/access_%Y_%W.log" combined

配置好如上两个部分后,我们的apache的错误日志和访问日志都可以每周进行一次自动分割了。

关于cronolog的使用(以下内容转自:http://www.lampbo.org/linux-xuexi/linux-sever/apache-logs-rotate.html)

cronolog的用法和格式

语法:/path/to/cronolog [OPTIONS] logfile-spec

其中:

OPTIONS:cronolog的选项,可通过下面示例中的-h 或 –help选项查看

logfile-spec: 是描述输出的日志文件名的模板,每一个无前导%的字符都是文件名的组成部分,%后面跟一个字符为日期和时间格式串,将被下表列出的它们代表的实际字串所替换。
特殊格式串:

  1. %%               %字符
  2. %n                新行
  3. %t                 tab字符

时间格式串:

  1. %H               24小时制小时(00..23)
  2. %I                12小时制小时(01..12)
  3. %p               本地AM/PM指示符
  4. %M             分钟(00..59)
  5. %S               秒(00..61)
  6. %X              本地时间(e.g.: “15:12:47″)
  7. %Z              时区 (e.g. GMT),如果不能检测出时区,值为空

日期格式串:

  1. %a             本地简短星期名(e.g.: Sun..Sat)
  2. %A            本地完整星期名(e.g.: Sunday .. Saturday)
  3. %b            本地简短月名(e.g.: Jan .. Dec)
  4. %B            本地完整月名(e.g.: January .. December)
  5. %c             本地日期与时间(e.g.: “Sun Dec 15 14:12:47 GMT 1996″)
  6. %d            一月中的第几日(01 .. 31)
  7. %j             一年中的第几天 (001 .. 366)
  8. %m           月名的数字表示 (01 .. 12)
  9. %U            一年中以星期日为每周第一天计算的星期数(00..53, 第一周包括新年的第一个星期日)
  10. %W           一年中以星期一为每周第一天计算的星期数(00..53, 第一周包括新年的第一个星期一)
  11. %w            星期名的数字表示 (0 .. 6, 0为星期日)
  12. %x             本地日期 (e.g. 今天在北京是: “15/12/96″)
  13. %y             不带世纪的年(00 .. 99)
  14. %Y             带世纪的年(1970 .. 2038)

使用cronolog自动分割apache的日志。的更多相关文章

  1. 基于log4net的支持动态文件名、按日期和大小自动分割文件的日志组件

    最近处理一个日志功能,用log4net的配置不能完全满足要求,所以在其基础上简单封装了一下,支持以下功能: 1 零配置 内置默认配置,引用dll后不需要添加或修改任何配置文件也可以使用 2 动态指定文 ...

  2. linux下用cronolog分割apache日志

    linux下用cronolog分割apache日志,大神莫拍砖,菜鸟留一记录,小白请默默转载.连linux登陆和vi编辑都不会的,请默默关闭此页面.入正题 说明:淡绿色底的为linux命令,其他的为备 ...

  3. apache 访问日志access_log 配置和解析 rotatelogs分割日志

    一.解析访问日志        apache 的访问日志记载着大量的信息,学会高效快捷的读出其中关键信息对我们的工作有极大帮助.       如果Apache的安装方式是默认安装,服务器一运行就会有两 ...

  4. linux日志自动分割shell

    随着服务器运行时间不断增加,各种日志文件也会不断的增长,虽然硬盘已经是白菜价了,但是如果当你看到你的一个日志文件达到数十G的时候是什么感想?下面的脚本实现了如下功能: 自动对日志文件进行分割 对分割后 ...

  5. 自动分割nginx服务的日志文件

    nginx服务每天都会产生大量的日志信息,时间一长导致日志文件容量很大,会影响系统性能.通过以下shell代码,配合crontab定时执行可实现nginx日志定时分割的功能. #!/bin/bash ...

  6. apache日志配置一例,包括指定存储目录与格式、自动删除过期的日志文件

    有需要的朋友可以参考下(http://www.nanke0834.com) 1.vim /usr/local/apache2/conf/extra/httpd-vhosts.conf 添加或修改为:复 ...

  7. Apache配置日志切割

    随着网站的访问越来越大,WebServer产生的日志文件也会越来越大,如果不对日志进行分割,那么只能一次将大的日志(如Apache的日志)整个删除,这样也丢失了很多对网站比较宝贵的信息,因为这些日志可 ...

  8. 【Apache运维基础(6)】Apache的日志管理与分析

    简述 Apache 访问日志在实际工作中非常有用,比较典型的例子是进行网站流量统计,查看用户访问时间.地理位置分布.页面点击率等.Apache 的访问日志具有如下4个方面的作用: 记录访问服务器的远程 ...

  9. apache用户认证、域名跳转、Apache访问日志(两种格式)

    1.apache 设置,用户访问时 目录或文件的认证: 对目录的认证: <Directory /var/www/222> //指定认证的目录AllowOverride AuthConfig ...

随机推荐

  1. C# 通过SendMessage获取浏览器地址栏的地址

    1:通过SPY++获得地址栏的层次结构,然后一层一层获得 2:代码 using System; using System.Collections.Generic; using System.Linq; ...

  2. PYQT操作JS并且截图事例

    如何安装PYQT,可以查看我的上一篇文章:http://www.cnblogs.com/liqiu/p/3361948.html 然后运行下面的带有JS程序的Python脚本即可: #-*- codi ...

  3. 轻松把玩HttpClient之封装HttpClient工具类(五),携带Cookie的请求

    近期更新了一下HttpClientUtil工具类代码,主要是加入了一个參数HttpContext,这个是用来干嘛的呢?事实上是用来保存和传递Cookie所须要的. 由于我们有非常多时候都须要登录.然后 ...

  4. bash shell 获取当前正在执行脚本的绝对路径

    https://my.oschina.net/leejun2005/blog/150662 http://blog.csdn.net/10km/article/details/51906821 如题, ...

  5. SpringMVC+SPring+Maven+Mybaits+Shiro+Mybaits基础开发项目

    开源项目资料库:https://gitee.com/VCS/seezoon-framework-all Seezoon项目介绍 基于spring,mybatis,shiro面向接口开发的的一套后台管理 ...

  6. 【JMeter】初识JMeter(1)

    一.JMeter介绍 JMeter是一款开源桌面应用软件,可以用来模拟用户负载来完成性能测试工作.JMeter的功能在版本升级的过程中已经十分强大,现在多数互联网公司都在使用JMeter来完成产品或者 ...

  7. java 怎么实现接收控制台输入?

    //接收键盘输入: //怎么实现接收控制台输入? import java.util.Scanner; //Test.java import java.util.Scanner; public clas ...

  8. 各个版本VS编译好的GDAL库下载

    简单说明 自己编译GDAL比较繁琐且时间较长,而且很多 Driver 需要自己去编译.如果不是要学习怎么编译GDAL,可以直接使用已经编译好的库. OSGeo官方没有提供编译好的GDAL,但是它有给出 ...

  9. zuul(springboot)设置静态资源代理和默认首页代码一例

    直接上代码: public class StaticResourcesConfig extends WebMvcConfigurerAdapter { private static final Log ...

  10. OpenCV windows 上安装

    1.先按照  Anaconda , 有关教程,可以去其他博客查看 2.傻瓜的装Opencv.(我采用的) 在Anaconda  Prompt中输入: conda install -c https:// ...