设为首页 收藏本站
查看: 1013|回复: 0

[经验分享] 日志切割工具cronolog yum安装和源码安装和基本使用

[复制链接]

尚未签到

发表于 2017-11-14 10:53:45 | 显示全部楼层 |阅读模式
日志rotate工具cronolog可对Apache,NGINX,Tomcat的日志进行切割,以后研究能不能对系统日志进行切割。我猜应该结合crontab,对系统日志进行切割。 以下是两个安装方式

conolog主要和Web服务器配置使用,特别是Apache服务器,Apache 默认日志文件是不分割的,一个整文件既不易于管理,也不易于分析统计。安装cronolog后,可以将日志文件按时间分割,易于管理和分析。下面是与Apache配置的一些指令:

1.TransferLog "|/usr/sbin/cronolog /web/logs/%Y/%m/%d/access.log"
2.ErrorLog    "|/usr/sbin/cronolog /web/logs/%Y/%m/%d/errors.log"


下面是具体案例,

1./web/logs/2002/12/31/access.log/web/logs/2002/12/31/errors.log
2./web/logs/2003/01/01/access.log/web/logs/2003/01/01/errors.log

第一种安装方式:rpm包安装
1.安装epelyum源

[iyunv@node6 src]# yum install -y wget vim
[iyunv@node6 src]# wget http://ftp.sjtu.edu.cn/fedora/ep ... ease-6-8.noarch.rpm
[iyunv@node6 src]# rpm -ivh epel-release-6-8.noarch.rpm
warning: epel-release-6-8.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY
Preparing...                ########################################### [100%]
   1:epel-release           ########################################### [100%]


2.安装ntp



[iyunv@node6 src]# yum install -y ntp


3.时间同步
[iyunv@node6 src]# ntpdate 202.120.2.101

28 Dec 17:59:17 ntpdate[1413]: step time server 202.120.2.101 offset -25666.776448 sec


4.安装cronolog
(1).直接用yum安装

1

[iyunv@node6 src]# yum install -y cronolog httpd


第二种安装方式:源码安装

[iyunv@node6 src]# wget http://cronolog.org/download/cronolog-1.6.2.tar.gz
[iyunv@node6 src]# tar xf cronolog-1.6.2.tar.gz
[iyunv@node6 src]# cd cronolog-1.6.2
[iyunv@node6 cronolog-1.6.2]# ./configure
[iyunv@node6 cronolog-1.6.2]# make && make install
[iyunv@localhost ~]# which cronolog
/usr/local/sbin/cronolog


好了,到这里我们的cronolog就安装完成了,下面我们来说一下cronolog如何使用。



五、cronolog 使用
(1).基本使用


[iyunv@node6 ~]# cronolog -h
usage: cronolog [OPTIONS] logfile-spec
   -H NAME,   --hardlink=NAME maintain a hard link from NAME to current log
   -S NAME,   --symlink=NAME  maintain a symbolic link from NAME to current log
   -P NAME,   --prev-symlink=NAME  maintain a symbolic link from NAME to previous log
   -l NAME,   --link=NAME     same as -S/--symlink
   -h,        --help          print this help, then exit
   -p PERIOD, --period=PERIOD set the rotation period explicitly
   -d DELAY,  --delay=DELAY   set the rotation period delay
   -o,        --once-only     create single output log from template (not rotated)
   -x FILE,   --debug=FILE    write debug messages to FILE
                              ( or to standard error if FILE is "-")
   -a,        --american         American date formats
   -e,        --european         European date formats (default)
   -s,    --start-time=TIME   starting time
   -z TZ, --time-zone=TZ      use TZ for timezone
   -V,      --version         print version number, then exit


cronolog 一般是采取管道的方式来工作的,采用如下的形式:


1

[iyunv@node6 ~]# loggenerator | cronolog log_file_pattern


其中,loggenerator为产生log的程序,而log_file_pattern是日志文件的路径,可以在其中加入cronolog所支持的时间相关的pattern字符,如/www/log/%y/%m/%d/access.log。其pattern为%字符后跟一特殊字符,简述如下:
转义符:  




%    %字符
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)


(2).结合apache使用

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

[iyunv@localhost ~]# vim /usr/local/apache2/conf/httpd.conf
将默认日志: CustomLog "logs/access_log" combined
修改为:CustomLog "|/usr/local/sbin/cronolog /log/www/access_%Y%m%d.log" combined 即可。其中%Y%m%d为日志文件分割方式,即为“年月日”。
[iyunv@localhost ~]# /usr/local/apache2/bin/apachectl restart


对Tomcat日志的切割

在tomcat/bin/catalian.sh中找到:
org.apache.catalina.startup.Bootstrap "$@" start /
>> "$CATALINA_BASE"/logs/catalina.out 2&1 &

修改为:
org.apache.catalina.startup.Bootstrap "$@" start /
|/usr/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.out.%Y-%m-%d
>> /dev/null 2&1 &




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-407095-1-1.html 上篇帖子: Linux下产生随机密码的7种方法 下篇帖子: vmstat 命令详解
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表