GBase 8a MPP Cluster自动清理日志实现方式

42 阅读2分钟

原文链接:www.gbase.cn/community/p…
更多精彩内容尽在南大通用GBase技术社区,南大通用致力于成为用户最信赖的数据库产品供应商。

自动清理日志

在GBase8a 运营维护过程中,经常会需要定期清理系统日志。可以参考在crontab中,按照以下方式配置脚本来实现。

crontab配置

可以参考设置每月1日执行脚本

  • 脚本赋予gbase用户可执行权限:

    chmod +x /opt/gbasetolls/cleanlogs.sh
    
  • 编辑gbase用户的crontab: 

    crontab -e
    
  • crontab配置样例: 

     0 0 1 * *  sh /opt/gbasetolls/cleanlogs.sh
    
  • 检查crontab配置:  

    crontab -l
    

脚本说明

  • 参数ceiling为日志大小,可根据实际需要进行指定
  • 脚本运行时应确保gbase用户执行
  • 脚本清理内容为:集群层express日志,节点层expres 日志,集群层system日志 ,节点层system日志,gcware日志和 loader日志
  • loader log的清理规则是: 清理脚本运行当天之前的的日志目录及其内部文件,如需变更可修改 -mtime +N 中的N参数

脚本内容

########################################################################################
# script name : cleanlogs.sh
# author: zhaoqinggang
# create time: 2024-09-25
# specification: 清理集群日志脚本
# precondition:每个节点都部署在gbase用户的crontab
# run user: gbase
########################################################################################

ceiling=10000000000   #10GB

gc_log_home="$GCLUSTER_BASE/log/gcluster"
gn_log_home="$GBASE_BASE/log/gbase"
loader_log_home="$GCLUSTER_BASE/log/gcluster/loader_logs"
gcware_home="$GCWARE_BASE/log/"


c_gc_express()
{   doc="$gc_log_home/express.log"
   fsize=`stat -c %s $doc`
       if [ $fsize -gt $ceiling ];then
               echo "" > $doc
       fi
}

c_gn_express()
{
   doc="$gn_log_home/express.log"
       fsize=`stat -c %s $doc`
       if [ $fsize -gt $ceiling ];then
               echo "" > $doc
       fi
}


c_gc_system()
{   doc="$gc_log_home/system.log"
   fsize=`stat -c %s $doc`
       if [ $fsize -gt $ceiling ];then
               echo "" > $doc
       fi
}

c_gn_system()
{   doc="$gn_log_home/system.log"
   fsize=`stat -c %s $doc`
       if [ $fsize -gt $ceiling ];then
               echo "" > $doc
       fi
}

c_gcware()
{   doc="$gcware_home/gcware.log"
   fsize=`stat -c %s $doc`
       if [ $fsize -gt $ceiling ];then
               echo "" > $doc
       fi
}


c_gc_loader_log()
{
       #删除当天之前的
   cd $loader_log_home && find -type d -mtime +0 |grep -v "^.$" |xargs rm -rf

}


main()
{
       c_gc_express
       c_gn_express
       c_gc_system
       c_gn_system
       c_gcware
       c_gc_loader_log

}
main
 

原文链接:www.gbase.cn/community/p…
更多精彩内容尽在南大通用GBase技术社区,南大通用致力于成为用户最信赖的数据库产品供应商。