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

apache日志轮转的更多相关文章

  1. apache日志切割

    一.日志切割 安装cronolog CentOS 5.4中编译安装Apache默认日志是不切割的,需要用用工具Cronnolog进行日志切割 1.下载及安装 wget http://cronolog. ...

  2. 基于Spring Boot的Logback日志轮转配置

    在生产环境下,日志是最好的问题调试和跟踪方法,因此日志的地位是十分重要的.我们平时经常使用的log4j,slf4j,logback等等,他们的配置上大同小异.这里就结合Spring Boot配置一下L ...

  3. 09、日志轮转+rsync同步

    logrotate   -  rotates,  compresses,  and    mails system logs 日志轮转 rotate 日志切割 轮转   切割   备份   归档 常见 ...

  4. elk系列7之通过grok分析apache日志

    preface 说道分析日志,我们知道的采集方式有2种: 通过grok在logstash的filter里面过滤匹配. logstash --> redis --> python(py脚本过 ...

  5. logresolve - 解析Apache日志中的IP地址为主机名

    logresolve是一个解析Apache访问日志中IP地址的后处理程序. 为了使对名称服务器的影响降到最低,logresolve拥有极为自主的内部散列表缓存, 使每个IP值仅仅在第一次从日志文件中读 ...

  6. Apache日志分析

    Apache日志统计举例 加些来了解一下如何统计Apache的访问日志,一般可以用tail命令来实时查看日志文件变化,但是各种的应用系统中的日志会非常复杂,一堆长度超过你浏览极限的日志出现在你眼前时, ...

  7. 关于Apache日志的统计

    统计apache日志文件里访问量前十的ip并按从多到少排列 五月 31, 2012 by FandLR   Filed under Linux Leave a comment 解法1: cat acc ...

  8. Apache日志配置参数详细说明

    Apache日志按时间分段记录 在apache的配置文件httpd.conf中找到ErrorLog logs/error_log及CustomLog logs/access_log common Li ...

  9. Apache日志配置详解(rotatelogs LogFormat)

    logs/error_logCustomLog logs/access_log common--默认为以上部分 修改为如下: ErrorLog "|/usr/sbin/rotatelogs ...

随机推荐

  1. [转载] linux 速查表

    原文: http://www.nixtutor.com/linux/all-the-best-linux-cheat-sheets/ 1. Linux Command Line Linux Refer ...

  2. 09 高效的PL/SQL程序设计

    程序包 Package 断开了依赖链 实验依赖关系: <1> 首先不使用包 -- 创建表 CREATE table t (x int); -- 创建视图 create view v as ...

  3. JavaWeb学习总结(十三)--数据库连接池

    一.数据库连接池的概念 用池来管理Connection,这可以重复使用Connection.有了池,所以我们就不用自己来创建Connection,而是通过池来获取Connection对象.当使用完Co ...

  4. 转:CPU与内存的那些事

    下面是网上看到的一些关于内存和CPU方面的一些很不错的文章. 整理如下: 转: CPU的等待有多久? 原文标题:What Your Computer Does While You Wait 原文地址: ...

  5. linux runlevel

    Linux系统有7个运行级别(runlevel)运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆运行级别2:多 ...

  6. android textview段落开头空格问题

    textview中段落开头一般都会空2格排版显示,如果靠编辑空格来解决那就大错特错了,完美的解决方法就是用转义字符"\t",在段首加\t\t就解决啦!

  7. linux 相关学习记录

    (一)概念① 物理CPU实际Server中插槽上的CPU个数物理cpu数量,可以数不重复的 physical id 有几个② 逻辑CPU /proc/cpuinfo 用来存储cpu硬件信息的信息内容分 ...

  8. 用NAN简化Google V8 JS引擎的扩展

    通过C++扩展Google V8 JS引擎的文章很多,Google V8 JS带的例子也容易明白.但是大部分文章都是Hello World型的,真正使用时发现处处是坑.扩展V8最经典的例子就是node ...

  9. Android LayoutParams

    LayoutParams继承于Android.View.ViewGroup.LayoutParams,就是布局. LayoutParams相当于一个Layout的信息包,它封装了Layout的位置.高 ...

  10. 静态类和静态类成员(C# 编程指南)

    静态类与非静态类基本相同,但存在一个区别:静态类不能实例化. 也就是说,不能使用 new 关键字创建静态类类型的变量. 因为没有实例变量,所以要使用类名本身访问静态类的成员. 例如,如果名为 Util ...