`
san_yun
  • 浏览: 2651977 次
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

cronolog

阅读更多

原作者:陈明

 

很多环境里的apache配置文件 httpd.conf中,都有这么一行 CustomLog "|/usr/local/sbin/cronolog ${intl_aisn_out}/logs/cookie_logs/%d/cookie_log" cookie_log env=!nolog

 

也许有些人还不清楚这个是干什么的,其实这是利用Cronolog 这个日志轮循工具,将我们的cookie_log 进行按日期的轮循分割。也就是说:一天记录一个cookie_log 文件。

Cronolog 其实还有很多特性,它还可以按月、甚至按小时的日志轮循记录,也可以配置每个文件的最大值,当达到这个最大值,自动记录到下一个日志文件里。

我们目前线上的Cronolog 版本是1.6.2。 但此版本有一个弊端:当日志文件的大小到2G (2150726147字节) 的时候,Cronolog 的进程就变成了僵尸进程,即日志再也记不进去了。Cronolog 的1.7版本解决了这个问题

目前国际站的aisn、searchweb的cookie_log即将达到这个2G的限制点。可以升级Cronolog 到1.7,也可以做日志拆分,但需要数据仓库配合修改日志收集的部分。

 关于 Cronolog 的使用,可参考下面

一.安装  
1.      到www.cronolog.org下载的源码包,并解压到某目录;
2.      su - root;cd /path/to/cronolog;./configure;make; make install――会 将cronolog安装到/usr/local/sbin;同时安装相应的man pages。 建议strip /usr/local/sbin /cronolog以进一步减小其文件大小(大概20多k)。
 
二.基本使用方式
cronolog一般是采取管道的方式来工作的,采用如下的形式:
# loggenerator | cronolog log_file_pattern 
其中,loggenerator为产生log的程序,而log_file_pattern是日志文件的路径,可以在其中加入cronolog所支持的时间 相关的pattern字符,如/www/log/%y/%m/%d/access.log。其patter为%字符后跟一特殊字符,简述如下:
转义符:
%    %字符
n    换行
t    水平制表符
时间域:
H    小时(00..23)
I    小时(01..12)
p    该locale下的AM或PM标识
M    分钟(00..59)
S    秒 (00..61, which allows for leap seconds) 
X    该locale下时间表示符(e.g.: _"15:12:47 "_) 
Z    时区。若时区不能确定,则无意义
日期域:
a    该locale下的工作日简名(e.g.: Sun..Sat)
A    该locale下的工作日全名(e.g.: Sunday ..  Satur-ay)
b    该locale下的月份简称(e.g.: Jan .. Dec)
B    该locale下的月份全称(e.g.:  January .. December)
c    该locale下的日期和时间(e.g.: "Sun Dec 15  14:12:47 GMT 1996")
d    当月中的天数 (01 .. 31)
j    当年中的天数 (001 .. 366)
m    月数 (01 .. 12)
U    当年中的星期数,以周日作为一周开始,其中第一周为首个含星期天的星期(00..53)
W    当年中的星期数,以星期一作为一周的开始,其中第一周为首个含星期天的星期(00..53)
w    工作日数(0 .. 6, 0表示星期天)
x    该locale下的日期表示(e.g. "13/04/97")
y    两位数的年份(00 .. 99)
Y    四位数的年份(1970 .. 2038)
 
三.Apache日志的使用方式

编辑httpd.conf文件,将其中的

CustomLog /usr/local/apache/logs/access_log combined这行,改为:

CustomLog "|/usr/local/sbin/cronolog /usr/local/apache/logs/%Y_week_%U/access_log" combined
   注意其中的双引号是必须的,因为这是一个管道操作。上述的配置将在apache的logs目录下,建立形如2002_week_50等按周方式编排的目 录,然后将apache的access log写入到access_log文件,格式为combined。  Cronolog将自动完成目录生成,在周期边界点上准时切换等操作。

分享到:
评论

相关推荐

    cronolog-1.6.2.tar.gz cronolog-1.6.2下载

    cronolog是一款广泛应用于Linux和Unix系统的日志管理工具,它主要功能是进行日志轮询,以有效地管理和控制服务器上的日志文件大小。在标题"cronolog-1.6.2.tar.gz cronolog-1.6.2下载"中,我们可以看到这是cronolog...

    Linux Cronolog的安装

    Linux Cronolog是一个强大的日志管理工具,主要用于周期性地分割和归档日志文件,以保持日志系统整洁,便于管理和分析。在本教程中,我们将深入探讨如何在Linux环境中安装Cronolog,并将其应用于Apache Tomcat服务器...

    cronolog-1.6.2.tar.gz

    # tar zxvf cronolog-1.6.2.tar.gz 3、进入cronolog安装文件所在目录 # cd cronolog-1.6.2 4、运行安装 # ./configure # make # make install 5、查看cronolog安装后所在目录(验证安装是否成功) # which cronolog ...

    cronolog-1.6.1-win32.zip

    cronolog是一款广泛使用的日志管理工具,尤其在Linux和Unix环境中流行。然而,这个cronolog-1.6.1-win32.zip文件表明它已被移植到Windows操作系统上,版本为1.6.1,适用于32位系统。cronolog的主要功能是按照时间...

    windows版本的cronolog.1.6.1

    cronolog是一款广泛应用于Unix/Linux环境的日志管理工具,它能够按照设定的时间间隔(如每天、每小时)将日志文件分割成多个独立的文件,便于管理和检索。在Windows环境下,由于默认并不支持cronolog,因此需要寻找...

    cronolog-1.6.1.windosw32位.zip

    cronolog是一款广泛应用于Linux环境的命令行工具,用于日志文件的分割和管理。它能够按照用户设定的时间间隔,如小时、天或周,将日志文件分割成多个小文件,便于日志的管理和分析。在给定的“cronolog-1.6.1....

    日志分割工具cronolog-1.6.2.tar.gz

    cronolog是一款广泛使用的日志管理工具,特别是在基于Unix或Linux的操作系统中。它主要用于自动分割和轮转服务器上的日志文件,确保日志数据的有效管理和分析。cronolog的名字来源于"cron"(定时任务)和"log"(日志...

    cronolog-1.6.1.win32-bin.zip

    cronolog是一款广泛应用于服务器日志管理的工具,尤其在Linux环境中,它能够自动地分割和归档日志文件,以保持日志数据的有序性和易管理性。然而,标题中的"cronolog-1.6.1.win32-bin.zip"表明这是一个针对Windows...

    cronolog-1.6.2.rar

    cronolog是一款广泛使用的日志管理工具,特别是在Linux服务器环境中,它能够按照预定义的时间间隔对日志文件进行分割,以帮助系统管理员有效地管理和分析服务器的日志数据。在本例中,我们关注的是cronolog的1.6.2-...

    apache日志分割工具cronolog

    ### Apache日志分割工具Cronolog 在现代的IT运维管理中,日志管理是非常重要的一环,尤其对于像Apache这样的高性能Web服务器来说更是如此。随着网站访问量的增长,单一的日志文件会变得异常庞大,这不仅使得日志...

    cronolog最新可用版

    cronolog是一款广泛应用于Linux和Unix系统的日志管理工具,它基于时间轮换,可以自动将服务器的日志文件按时间分割,便于管理和分析。这个压缩包文件`cronolog-1.6.2.tar.gz`是cronolog的最新可用版本,版本号为...

    cronolog-1.6.2.zip

    cronolog是Linux环境中的一款日志管理工具,它主要用于自动分割和归档服务器上的日志文件。这个"cronolog-1.6.2.zip"压缩包包含的是cronolog的1.6.2版本,可能包括源代码、安装脚本、文档等资源。在Linux服务器运维...

    cronolog切割tomcat catalina.out 文件 tomcat日志按小时切割

    标题中的“cronolog切割tomcat catalina.out 文件 tomcat日志按小时切割”是指使用cronolog工具对Tomcat服务器的日志文件,特别是`catalina.out`文件进行按小时分割的实践方法。`catalina.out`是Tomcat默认的日志...

    cronolog-1.6.1-win32

    cronolog 是一个在类 Unix 系统中广泛使用的日志管理工具,主要用于分割和轮转 Web 服务器的日志文件。这个“cronolog-1.6.1-win32”版本表明它已经被移植到了 Windows 平台,使得在 Windows 系统上也能享受到类似的...

    cronolog-1.6.2.Linux.zip

    cronolog是Linux操作系统中的一款日志管理工具,主要用于日志文件的分割和归档。它按照时间间隔(如每小时、每天)将日志文件分割成多个小文件,便于管理和分析系统活动。这个压缩包“cronolog-1.6.2.Linux.zip”...

    nginx-1.7.2 + cronolog-1.6.2

    **Nginx 1.7.2 和 Cronolog 1.6.2:构建高效反向代理与日志管理系统** Nginx 和 Cronolog 是在 Linux 系统中广泛使用的两个工具,它们分别用于网络服务器的反向代理服务和日志管理。在本文中,我们将深入探讨这两个...

    cronolog_1.6.2.rar

    cronolog是一款广泛应用于Linux和Unix系统的日志管理工具,它能够自动按照时间(如小时、天或月)分割Web服务器的日志文件,从而方便管理员进行日志分析和维护。在Windows环境中,通过模拟Unix环境或者使用支持...

    cronolog1.6.2的tomcat日志分割

    cronolog是一款广泛使用的日志管理工具,特别是在Linux系统中,它能够按照用户设定的时间间隔自动分割日志文件,便于管理和分析。在Tomcat这样的Java应用服务器中,catalina.out文件是默认的日志输出文件,它记录了...

Global site tag (gtag.js) - Google Analytics