精华内容
参与话题
问答
  • [Apache]分割Apache日志并设置定时清理

    千次阅读 2018-01-12 15:46:36
    操作系统:redhat7.2 IBM HTTP SERVER 修改httpd.conf文件 ,注释之前的内容,增加下述内容 #按天分割error_log ErrorLog "| /data/IBM/...CustomLo

    操作系统:redhat7.2

    IBM HTTP SERVER

    修改httpd.conf文件 ,注释之前的内容,增加下述内容

    #按天分割error_log
    ErrorLog "| /data/IBM/HTTPServer/bin/rotatelogs /data/logs/error_log-%Y%m%d 86400 480"
    
    #按天分割access_log
    CustomLog "| /data/IBM/HTTPServer/bin/rotatelogs /data/logs/access_log-%Y%m%d 86400 480" common

    shell脚本

    #!/bin/sh
    #清空apache日志文件access_log,error_log
    #删除apache日志文件,保留最近7天的日志
    /usr/bin/find /data/logs/access*log* -mtime +14 -exec rm -f {} \;
    /usr/bin/find /data/logs/error*log* -mtime +14 -exec rm -f {} \;
    echo "删除14天前apache日志文件 完成!"

    授予执行权限

    #chmod +x  cleanlog.sh

    执行定时任务

    30 23 * * * /data/shell/cleanlog.sh

    注:crontab -l 是查看定时任务 , crontab -e是编辑定时任务(用法等于VI编辑器)

    30  23 * * *    分别是 分 时 日 月 星期  ,这代表每天23点30分执行 /data/shell/cleanlog.sh



    展开全文
  • vim tomcat/conf/server.xml ,注释掉localhost_access_log日志 <!-- <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern...

    vim tomcat/conf/server.xml ,注释掉localhost_access_log日志

    <!--
    <Valve className="org.apache.catalina.valves.AccessLogValve"
    directory="logs"  prefix="localhost_access_log." suffix=".txt"
    pattern="common" resolveHosts="false"/>
    -->
    

    关闭catalina.out(此设置要根据业务而定!切记!)

    // vim tomcat/bin/catalina.sh文件,设置成/dev/null
    if [ -z "$CATALINA_OUT" ] ; then  
      CATALINA_OUT=/dev/null
    

    脚本实现设置CATALINA_OUT=/dev/null

    sed -i 's#CATALINA_OUT=\"$CATALINA_BASE\"/logs/catalina.out#CATALINA_OUT=/dev/null#g'  /opt/tomcat/apache-tomcat-8.5.47/bin/catalina.sh
    

    任务调度脚本:

    1.  cd /opt           2.  mkdir clean        3.  touch cleanCatalina.sh   
    

    复制粘贴下面的信息到shell脚本中

    #!/bin/bash
    #删除1天前的tomcat/logs/下 *.log 文件(天数可根据业务自己设定)
    find /opt/tomcat/apache-tomcat-8.5.47/logs/  -mtime +1 -name "*.log*" -exec rm -rf {} \;
    # 定时清空 catalina.out
    echo -n "" > /opt/tomcat/apache-tomcat-8.5.47/logs/catalina.out
    

    编辑Linux任务调度

    crontab -e
    

    添加定时任务:说明,启动shell脚本有 sh 命令和路径,路径的话,要授权 chmod +x cleanCatalina.sh

    # 每天930分执行清理脚本
    30 9 * * * /opt/clean/cleanCatalina.sh
    
    # 简单的命令可以直接在定时任务中执行,无需写脚本
    crontab -e
    # 直接输入执行时间和需要执行的命令即可!
    30 1 * * * echo -n "" > /opt/tomcat/apache-tomcat-8.5.47/logs/catalina.out
    35 1 * * * find /opt/tomcat/apache-tomcat-8.5.47/logs/  -mtime +1 -name "*.log*" -exec rm -rf {} \;
    

    重启定时服务(也可不重启,保存后自动生效)

    service crond restart
    

    查看定时任务是否成功

    crontab -l
    

    清空定时任务

    crontab -r
    

    测试:修改系统时间,重启tomcat 生成修改后的时间日志文件,而后在修改为当日,可手动启动脚本,即可删除1天前的tomcat日志以及把catalina.out清空

    # 修改日期命令
    date -s "2018-10-14"
    

    **********************************************************************

    crond * 文档

    在这里插入图片描述
    在这里插入图片描述在这里插入图片描述

    展开全文
  • 定时清理指定日期以前的日志文件,防止磁盘满 这里是如果/home下磁盘使用超过85%,则清除15天以前的,如果仍超过85%,则清除14天前的,直到低于85%   #!/bin/bash clean() {  local interval=$1  find /...

    定时清理指定日期以前的日志文件,防止磁盘满

    这里是如果/home下磁盘使用超过85%,则清除15天以前的,如果仍超过85%,则清除14天前的,直到低于85%

     

    #!/bin/bash

    clean()
    {
      local interval=$1
            find /home/admin/apache/logs \( \( -name "*access_log" -or -name "*error_log" \) -and -ctime +$interval \) -print -type f -exec rm -rf {} \;
    }

    getsize()
    {
            local size=`df -h | grep "/home" | awk '{print $5}' | tr -d '%'`
            return $size
    }

    getsize
    declare -i use=$?
    declare -i tag=15

    echo "**cleanlogs start@`date +%D` ..."

    while [ $use -ge 85 -a $tag -ge 0 ]
    do
            echo "**usage: $use%, cleanup: $tag days"
            clean $tag
            getsize
            use=$?
            tag=`expr $tag - 1`
    done

    getsize
    use=$?

    if [ $use -ge 85 ]
    then
            echo "cleanlogs failed, usage: $use%" 1>&2
    else
            echo "**cleanlogs done, usage: $use%."
    fi

    展开全文
  • Linux 定时清理 Tomcat 日志文件 1、tomcat bin 目录下 vi clean_log.sh , 内容如下 tomcat 路径变量 logs_path="/opt/apache-tomcat-8.5.20/logs/" 2、删除 /opt/apache-tomcat-8.5.20/logs/下5天前,文件名称...

    Linux 定时清理 Tomcat 日志文件

    1、tomcat bin 目录下 vi clean_log.sh , 内容如下
    在这里插入图片描述

    tomcat 路径变量
    logs_path="/opt/apache-tomcat-8.5.20/logs/"

    2、删除 /opt/apache-tomcat-8.5.20/logs/下5天前,文件名称包含如下名称的日志

    find $logs_path -mtime +5 -name "catalina.*.log" -exec rm -rf {} \;
    find $logs_path -mtime +5 -name "localhost_access_log.*.txt" -exec rm -rf {} \;
    find $logs_path -mtime +5 -name "localhost.*.log" -exec rm -rf {} \;
    find $logs_path -mtime +5 -name "host-manager.*.log" -exec rm -rf {} \;
    find $logs_path -mtime +5 -name "manager.*.log" -exec rm -rf {} \;
    

    3、清空 /opt/apache-tomcat-8.5.20/logs/下的catalina.out

    	echo " " > /opt/apache-tomcat-8.5.20/logs/catalina.out
    

    4、为此清理脚本授权

    	chmod 777 clean_log.sh
    

    5、设置定时执行clean_log.sh脚本

    crontab -e
    

    6、添加内容如下,每天晚上0点自动执行上面创建的脚本
    ( crontab时间格式内容
    * * * * * command
    M H D m d command
    分 时 日 月 周 命令)

    0 0 * * * /opt/apache-tomcat-8.5.20/bin/clean_log.sh
    

    7、重启定时任务的服务

    service crond restart
    

    8、使用 crontab -l 命令查看是否设置成功
    在这里插入图片描述

    如下输出,则表示定时任务添加成功。

    展开全文
  • 1 Shell脚本案例 删除超过30天的日志文件 #!/bin/bash log_path=/mnt/software/apache-tomcat-9.0.0.M22/logs d=`date +%Y-%m-%d` d90=`date -d'30 day ago' +%Y-%m-%d` #cd ${log_path} && cp ...
  • 前端创建shell脚本: 1、创建脚本 touch /home/sunline/sunline-tomcat/apache-tomcat-7.0.81/logs/auto-del-15-days-ago-log.sh 2、使脚本变可执行状态 chmod +x /home/sunl...
  • linux下tomcat定时清理日志

    千次阅读 2018-02-02 15:18:11
    linux中有crontab 设置周期性被执行的指令 1.首先创建脚本文件 vim del-7-days-ago-tomcat-log.sh ...find /home/apache-tomcat-8.0.36/logs/ -mtime +7 -type f -name "catalina.*.out" -exec /bin/rm -rf {
  • touch /home/bea1/apache-tomcat-7.0.81/logs/auto-del-15-days-ago-log.sh 2,修改文件权限 chmod +x /home/bea1/apache-tomcat-7.0.81/logs/auto-del-15-days-ago-log.sh 3,编辑shell脚(输入vi命令后,打开...
  • Linux定时清理30天前的Tomcat日志脚本

    千次阅读 2018-02-07 14:56:04
    一、在tomcat的log路径下新建.sh脚本文件clean.sh,内容...logs_path="/mnt/tomcat/apache-tomcat-8.5.23/logs" find $logs_path -mtime +30 -name "localhost.*.log" -exec rm -rf {} \; find $logs_path -mti
  • 定时删除tomcat日志

    2019-08-09 16:33:12
    linux上的tomcat日志如果清理不及时,会造成硬盘空间不足,从而导致系统异常。 1、编写sh文件 #!/bin/bash ferp_logs_path="/usr/local/tomcat/apache-tomcat-8.0.24-fwone-erp/logs" ferp_fwone_path="${ferp_...
  • 官方参考文档:http://logging.apache.org/log4j/2.x/javadoc.html 公司上一个系统(SSM框架),在测试...第一个想法是,在 Linux 系统下写一个开机启动脚本,该脚本负责定时清理特定目录下的日志文件。网上搜...
  • 12.4.2 定期清理日志文件

    千次阅读 2009-12-22 09:31:00
    12.4.2 定期清理日志文件随着时间的推移,系统中...但是,一个更好的解决方法是通过编写脚本,利用Linux的定时任务功能自动定期清理日志文件。例如,要定期备份Apache的access_log日志文件到其他目录并清除当前日志
  • Apache log归档和删除

    2017-07-05 10:34:02
    对于Apache access log,要确保这些log可以定时的被清理,要将每天产生的日志文件分成到不同的文件中去,即每天产生新的日志文件,然后将每天的日志文件压缩归档后删除,首先在httpd.conf中配置下ErrorLog和...
  • linux定时任务

    2016-04-01 10:44:00
    1、创建自动清理日志脚本 在tomcat目录下新建crontabScript目录,新建clearLog.sh(目录地址自己选择) 脚本内容如下: #!/bin/bash #clear tomcat log find /data/apache-tomcat-7.0.47/logs/ -type f -mtime +1...
  • 实例271 清理SESSION缓存提高网站访问的效率 358 第6章 图形图像处理 361 6.1 图像与统计 362 实例272 图形计数器 362 实例273 GD2图形计数器 363 实例274 通过图像显示投票统计结果 365 实例275 通过图像显示密码...
  • 可以利用Laravel的任务调度来自动清理系统日志。启用任务调度需要在系统的计划任务中添加如下内容: * * * * * cd /path-to-your-project && php artisan schedule:run >> /dev/null 2>&1 可以...
  • 实例271 清理SESSION缓存提高网站访问的效率 358 第6章 图形图像处理 361 6.1 图像与统计 362 实例272 图形计数器 362 实例273 GD2图形计数器 363 实例274 通过图像显示投票统计结果 365 实例275 通过图像显示密码...
  • 今天在尝试将tomcat日志定时清理的时候,了解到 crontabs 工具,在安装的过程中报 E: Unable to locate package crontabs (找不到该源文件)的错误,上网寻找解决方案,执行了 apt-get upgrade 方法,执行过程中...
  • SpringBoot之快速开发脚手架

    千次阅读 2017-09-26 18:31:13
    前言当我们使用SpringBoot的时候,需要整合一些基本功能,方便开发。我这里根据个人习惯,集成并配置了MyBatis、LogBack日志、druid数据源、devtools热加载、...LogBack分包、分文件夹打印,限定日志大小,定时清理 dr
  • DailyRollingFileAppender是不支持最大备份数设置的(RollingFileAppender支持该属性,但是又不能按时间滚动),为了达到这个目的而又不想单独写个定时脚本去手动清理日志目录,我们必须自定义一个...

空空如也

1 2
收藏数 23
精华内容 9
关键字:

定时清理apache日志