zoukankan      html  css  js  c++  java
  • apache日志轮转

    apache默认的日志配置为:
        ErrorLog "logs/error_log"
        CustomLog "logs/access_log" common
    这样所有的错误日志和访问日志内容均分别保存在error_log和access_log文件中,时间一长,日志文件的内容就会变的非常大。一般情况下,我们希望将日志按一定的时间段或文件大小存成不同的文件。如每天存一个日志文件。
    此功能可通过LINUX的logrotate实现,但它有一个缺点,执行文件轮转时(即创建新文件后)可能需要通过脚本重启服务以实现将日志内容记录到新的日志文件中。
    apache提供了一个命令:rotatelogs(位于apache的bin目录下),可以完美的实现日志的轮转功能。
    rotatelogs的语法可通过 rotatelogs -h查看。
     
    以下通过3个例子说明其常用用法:
    ErrorLog "|/usr/app/httpd-2.4.2/bin/rotatelogs  /usr/app/httpd-2.4.2/logs/error_log.%Y-%m-%d 86400 480"
    每天生成一个错误日志文件。
    其中"/usr/app/httpd-2.4.2/bin/rotatelogs 为rotatelogs的绝对路径,看很多例子用相对路径bin/rotatelogs,我试了不行。记得路径前有“|”。日志文件/usr/app/httpd-2.4.2/logs/error_log.%Y-%m-%d最好用绝对路径,在我的测试中,有些可以用相对路径,但有些不行,会导致apache启动失败。
    logs/error_log.%Y-%m-%d 为日志文件的格式,实际为:error_log.2012-10-23
    86400为日志生成的时间间隔,即每隔86400秒生成一个新的日志,当然如果这段时间没有任何错误产生,不会生成新的日志文件。
    480为时间差,以分钟为单位。文件的时间为美国时间,中国的时差要比美国多8个小时也就是480分钟,所以要加上480分钟。如果不加,那日志记录的时间就会比实际服务器时间晚480分钟。
     
    CustomLog "|/usr/app/httpd-2.4.2/bin/rotatelogs /usr/app/httpd-2.4.2/logs/access_log.%Y-%m-%d.%H:%M:%S 180 480" common
    每180秒生成一个access日志文件,文件名形如:access_log.2012-10-24.23:42:00
     
    ErrorLog "|/usr/app/httpd-2.4.2/bin/rotatelogs  /usr/app/httpd-2.4.2/logs/errorlog.%Y-%m-%d-%H_%M_%S 2M +480"
    当日志文件达到2M后生成新的日志文件,支持的单位为K,M,G
     
     
    转载自:http://www.360doc.com/content/12/1024/23/10866842_243598545.shtml
  • 相关阅读:
    一款新型的智能家居WiFi选择方案——SimpleWiFi在无线智能家居中的应用
    智能手机的工业控制应用方案——SimpleWiFi在工业控制领域应用
    一种单片机支持WiFi的应用——SimpleWiFi在单片机中的应用
    TI推出SimpleLink低能耗蓝牙CC2541
    SimpleWiFi模块评估板
    Android架构设计和软硬整合完整训练
    CentOS上解压ZIP乱码的解决办法
    更具体的描述JNI
    数据市中心全省中国mysql脚本
    几种方法枚举子集
  • 原文地址:https://www.cnblogs.com/psz1992/p/4440971.html
Copyright © 2011-2022 走看看