使用rsync归档收集Tomcat日志

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用rsync归档收集Tomcat日志相关的知识,希望对你有一定的参考价值。

   随着业务的不断的增加,使得多台的Tomcat的日志不断剧增,以前有利用bzip2压缩历史数据的脚本压缩过,所以历史日志格式都是统一的,所以打算把部分历史日志数据收集下来,再做具体分析,选选取一台磁盘比较大的服务器用rsync来做日志中心服务器用于收集日志,需要的可以参看:http://jim123.blog.51cto.com/4763600/1959054。于是就写了一个脚本在不同的服务器上用于历史日志数据的归档,实现也很简单,如下:

#!/bin/bash
#rsync_logs.sh
#writer jim
#Used for historical log collection
#Need to use rsync you must install rsync
#00 00 01 * * /usr/local/scripts/rsync_logs.sh
#history
#2017.08.26
one_month_ago=$(date -d ‘-1 month‘ +%Y-%m)
tomcat_dir="/data/tomcat"
######rsync服务器相关配置变量####
port=873
rsyncd_user="root"
rsyncd_host="172.16.1.170"
DEST_name="backup"
password_file="/etc/.rsync.passwd"
##################################
rpm -qa | grep rsync
if [ $? -ne 0 ];then
    yum -y install rsync
fi

for i in $(ls $tomcat_dir)
do
    cd ${tomcat_dir}/${i}/logs
    for n in $(ls *${one_month_ago}*.bz2)
    do
        mv $n "${i}_${n}"
        #由于有多个Tomcat所以需要对历史压缩的日志数据改名
        rsync -vzrLtopg --progress --port=${port} "${i}_${n}" --password-file=${password_file} ${rsyncd_user}@${rsyncd_host}::${DEST_name} && rm -rf "${i}_${n}"
    done
done


本文出自 “Jim的技术随笔” 博客,谢绝转载!

以上是关于使用rsync归档收集Tomcat日志的主要内容,如果未能解决你的问题,请参考以下文章

Oracle数据库从RMAN备份集片段还原指定单个归档日志进行日志挖掘分析

ELK 平台收集Tomcat日志记录

使用rsync备份Windows事件日志

Rsyslog 收集tomcat日志

ELK之收集tomcat访问日志

Logstash 之 Tomcat日志收集