• 使用cronolog自动分割apache的日志。


     为了方便分析网站的日志,需要将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.2.tar.gz
    #进入目录
    cd cronolog-1.6.2
    #列出所有文件
    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.20130628
    #编辑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)  
  • 相关阅读:
    setTimeOut 和 setInterval对比
    vue官方源码剖析
    Taro 总结
    地图相交
    vscode 配置文件
    redis持久化的几种方式
    推荐.Net、C# 逆向反编译四大工具利器
    【转】Java 通过JDBC连接Mysql数据库的方法和实例【图文说明】
    【摘】Oracle 11g EM安全证书问题无法访问的解决办法
    MySql 从SQL文件导入
  • 原文地址:https://www.cnblogs.com/sixiweb/p/3160317.html
Copyright © 2020-2023  润新知