TimesTen与Oracle不同,由于TimesTen是内存数据库,基本无法存储太多用于分析的细心,ttmesg日志基本是问题分析的主要信息,保证故障期间的ttmesg信息有效变得特变的重要。
我们该如何估算并配置足够的存储空间来存储TimesTen日志呢?
1、首先创建脚本获取日志文件的平均生成时间:
$ cat get_logtime.sh
#!/bin/sh
log_dir=$1;
log_list='';
log_list=`ls $log_dir`;
for log in $log_list
do
echo $log;
head -1 $log | awk '{print $1,$2, $3}';
tail -1 $log | awk '{print $1,$2, $3}';
echo;
done;
2、执行脚本来采集数据,并计算日志文件的平均生成时间
$ get_logtime.sh '/TimesTen/tt1122/log/ttmesg*'
/TimesTen/tt1122/log/ttmesg.log
2014-05-05 00:00:00.69 Info:(12h)
2014-05-04 12:00:01.13 Info:
/TimesTen/tt1122/log/ttmesg.log.0
2014-05-04 00:00:00.17 Info:(12h)
2014-05-03 12:00:00.69 Info:
/TimesTen/tt1122/log/ttmesg.log.1
2014-05-03 00:00:00.89 Info:(12h)
2014-05-02 12:00:00.19 Info:
/TimesTen/tt1122/log/ttmesg.log.2
2014-05-02 00:00:00.60 Info:(12h)
2014-05-01 12:00:01.19 Info:
/TimesTen/tt1122/log/ttmesg.log.3
2014-05-01 00:00:00.42 Info:(12h)
2014-05-01 12:00:00.60 Info:
排除最近一次日志(可能没有写满),观察下来以上数据显示出每个日志在100mb大小,平均持续时长大概为12小时。
3、调整日志文件大小和数量
由于这里是测试环境,所以每个日志的生成时间稍做调整,为每12个小时生成一个文件,生产环境可以根据实际情况计算。如果生产环境中生成日志文件的速度不是很快,比如2小时或者更长时间才生成100mb的日志文件,那么日志文件可以调整为50mb大小,便于vi阅读。
日志文件大小和数量通过调整配置ttendaemon.options参数文件,该文件配置后需要重启daemon守护进程才能生效。
$ cat ttendaemon.options
# Commented values are default values
-supportlog /TimesTen/tt1122/log/ttmesg.log
-maxsupportlogfiles 10 ###默认配置保留10个日志文件,这里可以根据需要调整期存放的数量,比如200.
#-maxsupportlogsize 10485760 ###默认配置日志文件大小10mb,这里可以根据需要调整每个日志大小,比如50mb或100mb。
-userlog /TimesTen/tt1122/log/tterrors.log
#-maxuserlogfiles 10 ###默认配置保留10个错误日志文件,可以根据需要修改。
#-maxuserlogsize 0x100000 ###默认配置日志文件大小10mb,可以根据需要修改。
#
-verbose
-tns_admin /TimesTen/tt1122/info
-server 53397
-showdate ###配置日志文件中显示详细的日期和时间
-enablePolicyInactive
4、配置合理的日志存储空间
上面已经对日志生成的时间做分析,只要在生成环境中计算日志生成的速度,再计算每天生成的日志总大小,然后配置ttendaemon.options参数文件即可。
每天生成的日志大小*要保留的天数=总存储空间大小。
当然这里也需要同时计算tterrors的空间,日志分析保留建议最少保留40左右,尽量能保留3个月左右。
===================End==========================================
我们该如何估算并配置足够的存储空间来存储TimesTen日志呢?
1、首先创建脚本获取日志文件的平均生成时间:
$ cat get_logtime.sh
#!/bin/sh
log_dir=$1;
log_list='';
log_list=`ls $log_dir`;
for log in $log_list
do
echo $log;
head -1 $log | awk '{print $1,$2, $3}';
tail -1 $log | awk '{print $1,$2, $3}';
echo;
done;
2、执行脚本来采集数据,并计算日志文件的平均生成时间
$ get_logtime.sh '/TimesTen/tt1122/log/ttmesg*'
/TimesTen/tt1122/log/ttmesg.log
2014-05-05 00:00:00.69 Info:(12h)
2014-05-04 12:00:01.13 Info:
/TimesTen/tt1122/log/ttmesg.log.0
2014-05-04 00:00:00.17 Info:(12h)
2014-05-03 12:00:00.69 Info:
/TimesTen/tt1122/log/ttmesg.log.1
2014-05-03 00:00:00.89 Info:(12h)
2014-05-02 12:00:00.19 Info:
/TimesTen/tt1122/log/ttmesg.log.2
2014-05-02 00:00:00.60 Info:(12h)
2014-05-01 12:00:01.19 Info:
/TimesTen/tt1122/log/ttmesg.log.3
2014-05-01 00:00:00.42 Info:(12h)
2014-05-01 12:00:00.60 Info:
排除最近一次日志(可能没有写满),观察下来以上数据显示出每个日志在100mb大小,平均持续时长大概为12小时。
3、调整日志文件大小和数量
由于这里是测试环境,所以每个日志的生成时间稍做调整,为每12个小时生成一个文件,生产环境可以根据实际情况计算。如果生产环境中生成日志文件的速度不是很快,比如2小时或者更长时间才生成100mb的日志文件,那么日志文件可以调整为50mb大小,便于vi阅读。
日志文件大小和数量通过调整配置ttendaemon.options参数文件,该文件配置后需要重启daemon守护进程才能生效。
$ cat ttendaemon.options
# Commented values are default values
-supportlog /TimesTen/tt1122/log/ttmesg.log
-maxsupportlogfiles 10 ###默认配置保留10个日志文件,这里可以根据需要调整期存放的数量,比如200.
#-maxsupportlogsize 10485760 ###默认配置日志文件大小10mb,这里可以根据需要调整每个日志大小,比如50mb或100mb。
-userlog /TimesTen/tt1122/log/tterrors.log
#-maxuserlogfiles 10 ###默认配置保留10个错误日志文件,可以根据需要修改。
#-maxuserlogsize 0x100000 ###默认配置日志文件大小10mb,可以根据需要修改。
#
-verbose
-tns_admin /TimesTen/tt1122/info
-server 53397
-showdate ###配置日志文件中显示详细的日期和时间
-enablePolicyInactive
4、配置合理的日志存储空间
上面已经对日志生成的时间做分析,只要在生成环境中计算日志生成的速度,再计算每天生成的日志总大小,然后配置ttendaemon.options参数文件即可。
每天生成的日志大小*要保留的天数=总存储空间大小。
当然这里也需要同时计算tterrors的空间,日志分析保留建议最少保留40左右,尽量能保留3个月左右。
===================End==========================================