Linux下使用cronolog切割服务器日志文件的方法
2015-10-24 11:37
991 查看
Linux下运行的Web服务器Apache,默认日志文件是不分割的,一个整文件既不易于管理,也不易于分析统计。安装cronolog后,可以将日志文件按时间分割,易于管理和分析。
cronolog安装配置非常简单,下载后只需要输入几个命令即可完成。
1、下载(最新版本)
2、解压缩
3、进入cronolog安装文件所在目录
4、运行安装
5、查看cronolog安装后所在目录(验证安装是否成功)
一般情况下显示为:/usr/local/sbin/cronolog
整个安装过程结束,下面需要把日志的格式配置一下:
1、虚拟主机配置文件 httpd-vhosts.conf
将Web日志设置 CustomLog 修改为以下格式
当然,错误日志设置 ErrorLog 也可以利用 cronolog 分割,设置为
2、如果服务器上只有一个站点(当然这种情况比较少),直接按上面所说格式修改 httpd.conf 文件日志设置部分。
说明:
绿色部分 为 cronolog 安装后所在位置,系统版本不同可能位置不完全一样,以 which 命令查看到的位置为准;
蓝色部分 为设置的日志文件所在位置,根据需要修改;
红色部分 为设置的日志文件标识性字符,根据需要修改;
%Y%m%d 为日志文件分割方式,例子中为“年月日”,也可以修改成自己需要的。
修改httpd.conf文件:
这个文件在我的电脑上是在 /etc/httpd/conf/httpd.conf 不同的服务器 应该是不一样的
在最后加上
用于Tomcat
第一步
将
修改为
第二步
将
改为
第三步
将
修改为
重新启动 Tomcat
可以在 Tomcat 的 logs 目录底下找到以系统日期为结尾的 catalina.out.yyyy-mm-dd 的档案,这样子就成功了。
后续就是持续观察看看是不是每天都有产生一个新的 catalina.out.yyyy-mm-dd 档案。然后再安排定期删除这些较旧的 log 檔即可。
cronolog安装配置非常简单,下载后只需要输入几个命令即可完成。
1、下载(最新版本)
# wget http://cronolog.org/download/cronolog-1.6.2.tar.gz
2、解压缩
# tar zxvf cronolog-1.6.2.tar.gz
3、进入cronolog安装文件所在目录
# cd cronolog-1.6.2
4、运行安装
# ./configure # make # make install
5、查看cronolog安装后所在目录(验证安装是否成功)
# which cronolog
一般情况下显示为:/usr/local/sbin/cronolog
整个安装过程结束,下面需要把日志的格式配置一下:
1、虚拟主机配置文件 httpd-vhosts.conf
将Web日志设置 CustomLog 修改为以下格式
CustomLog "|/usr/local/sbin/cronolog /www/logs/example_%Y%m%d.log" combined
当然,错误日志设置 ErrorLog 也可以利用 cronolog 分割,设置为
ErrorLog "|/usr/local/sbin/cronolog /www/logs/error_%Y%m%d.log"
2、如果服务器上只有一个站点(当然这种情况比较少),直接按上面所说格式修改 httpd.conf 文件日志设置部分。
说明:
绿色部分 为 cronolog 安装后所在位置,系统版本不同可能位置不完全一样,以 which 命令查看到的位置为准;
蓝色部分 为设置的日志文件所在位置,根据需要修改;
红色部分 为设置的日志文件标识性字符,根据需要修改;
%Y%m%d 为日志文件分割方式,例子中为“年月日”,也可以修改成自己需要的。
修改httpd.conf文件:
这个文件在我的电脑上是在 /etc/httpd/conf/httpd.conf 不同的服务器 应该是不一样的
在最后加上
<VirtualHost *:80> # ServerAdmin webmaster@dummy-host.example.com # DocumentRoot /www/docs/dummy-host.example.com # ServerName dummy-host.example.com ErrorLog /data/logs/apache/webapps.wps.cn-error_log CustomLog "|/usr/local/sbin/cronolog /data/logs/apache/%Y%m%d/access_log.%H" combined #这个保证了每天一个文件夹 文件夹下 每个小时产生一个log #CustomLog "|/usr/local/sbin/cronolog /data/logs/apache/%Y%m%%Hdaccess_log" combined </VirtualHost> 进入到 /etc/init.d/httpd configtest 这样验证你的配置文件是否正确 进入到 /etc/init.d/httpd restart 重启apache 服务器(不同的系统应该是不一样 要自己找到)
用于Tomcat
第一步
将
if [ -z "$CATALINA_OUT" ] ; then CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out fi
修改为
if [ -z "$CATALINA_OUT" ] ; then CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out.%Y-%m-%d fi
第二步
将
touch "$CATALINA_OUT"
改为
#touch "$CATALINA_OUT"
第三步
将
org.apache.catalina.startup.Bootstrap "$@" start \ >> "$CATALINA_OUT" 2>&1 &
修改为
org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \ | /usr/local/sbin/cronolog "$CATALINA_OUT" >> /dev/null &
重新启动 Tomcat
service tomcat restart
可以在 Tomcat 的 logs 目录底下找到以系统日期为结尾的 catalina.out.yyyy-mm-dd 的档案,这样子就成功了。
后续就是持续观察看看是不是每天都有产生一个新的 catalina.out.yyyy-mm-dd 档案。然后再安排定期删除这些较旧的 log 檔即可。
相关文章推荐
- LinuxCNC+EtherCAT(4)之LinuxCNC overview
- Linux内核定时器
- Linux OS下分区的擦除与重写
- How To Create A Local Repository For SUSE Linux
- centos6.7x86_64php7安装笔记 new
- 查看linux下arp信息
- 查看linux下网卡mac地址
- linux下通过lseek()实现文件大小设置
- 查看linux路由信息
- 定制自己的内核
- 内核配置与裁剪浅析
- centos 安装rpmforge、rpmfusion、epel软件仓库 ( a old article !!!!!! )
- linux日志文件
- Linux系统下设置静态IP或自动获取动态IP的简单方法
- Linux下的platform总线驱动
- Ubuntu 14.04 wubi 硬盘安装 ~ linux小白
- CentOS yum 源的配置与使用----rpmforge
- LinuxCNC+EtherCAT(3)翻译一篇东西KINS——LinuxCNC中的HAL运动学组件~~~~~~~~~
- Linux 系统信息分析
- CentOS7 添加用户到 sudoers