使用cronolog进行日志切割

article/2025/10/9 7:57:12

1、下载(最新版本)

# wget http://cronolog.org/download/cronolog-1.6.2.tar.gz

2、解压缩

tar -xvf cronolog-1.6.2.tar

3、进入cronolog安装文件所在目录

cd  cronolog-1.6.2

4、运行安装

# ./configure
# make
# make install

5、查看cronolog安装后所在目录(验证安装是否成功)
# which cronolog
一般情况下显示为:/usr/local/sbin/cronolog

6、进入Tomcat的bin目录,打开catalina.sh文件

6.1、将:
if [ -z "$CATALINA_OUT" ] ; then
  CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out
fi
修改为:
if [ -z "$CATALINA_OUT" ] ; then
  CATALINA_OUT="$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out
fi

6.2、

将:
  touch "$CATALINA_OUT"
  if [ "$1" = "-security" ] ; then
    if [ $have_tty -eq 1 ]; then
      echo "Using Security Manager"
    fi
    shift
    eval $_NOHUP "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \
      -Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \
      -Djava.security.manager \
      -Djava.security.policy=="\"$CATALINA_BASE/conf/catalina.policy\"" \
      -Dcatalina.base="\"$CATALINA_BASE\"" \
      -Dcatalina.home="\"$CATALINA_HOME\"" \
      -Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \
      org.apache.catalina.startup.Bootstrap "$@" start \
      >> "$CATALINA_OUT" 2>&1 "&"

  else
    eval $_NOHUP "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \
      -Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \
      -Dcatalina.base="\"$CATALINA_BASE\"" \
      -Dcatalina.home="\"$CATALINA_HOME\"" \
      -Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \
      org.apache.catalina.startup.Bootstrap "$@" start \
      >> "$CATALINA_OUT" 2>&1 "&"

  fi
  
  修改为:
shift
  #touch "$CATALINA_OUT"
  if [ "$1" = "-security" ] ; then
    if [ $have_tty -eq 1 ]; then
      echo "Using Security Manager"
    fi
    shift
    eval "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \
      -Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \
      -Djava.security.manager \
      -Djava.security.policy=="\"$CATALINA_BASE/conf/catalina.policy\"" \
      -Dcatalina.base="\"$CATALINA_BASE\"" \
      -Dcatalina.home="\"$CATALINA_HOME\"" \
      -Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \
      org.apache.catalina.startup.Bootstrap "$@" start \
      2>&1 |/usr/local/sbin/cronolog "$CATALINA_OUT" &

  else
    eval "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \
      -Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \
      -Dcatalina.base="\"$CATALINA_BASE\"" \
      -Dcatalina.home="\"$CATALINA_HOME\"" \
      -Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \
      org.apache.catalina.startup.Bootstrap "$@" start \
      2>&1 |/usr/local/sbin/cronolog "$CATALINA_OUT" &

  fi

6.3、配置JVM参数

JAVA_OPTS="$JAVA_OPTS  -server -Xss512k -Xms8g -Xmx8g -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=1024m -XX:+UseG1GC -XX:MaxGCPauseMillis=10 -XX:InitiatingHeapOccupancyPercent=65 -XX:NewRatio=2 -XX:SurvivorRatio=12 -XX:G1ReservePercent=10 -XX:ConcGCThreads=8 -XX:ParallelGCThreads=8 -Xloggc:gc.log -XX:+HeapDumpOnOutOfMemoryError -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:+UnlockExperimentalVMOptions -XX:G1LogLevel=finest -XX:+PrintReferenceGC -XX:+PrintAdaptiveSizePolicy"

注:视服务器配置和应用做对应的修改

7、shell利用crontab自动清除日志

命令:find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \;
 
例子:
    find /opt/soft/log/ -mtime +30 -name "*.log" -exec rm -rf {} \;
 
说明:将/opt/soft/log/目录下所有30天前带".log"的文件删除。具体参数说明如下:
    find:linux的查找命令,用户查找指定条件的文件;
    /opt/soft/log/:想要进行清理的任意目录;
    -mtime:标准语句写法;
    +30:查找30天前的文件,这里用数字代表天数;
    "*.log":希望查找的数据类型,"*.jpg"表示查找扩展名为jpg的所有文件,"*"表示查找所有文件,这个可以灵活运用,举一反三;
    -exec:固定写法;
    rm -rf:强制删除文件,包括目录;
    {} \; :固定写法,一对大括号+空格+\+;

将脚本使用crontab部署于服务器即可


http://chatgpt.dhexx.cn/article/g3ggpABx.shtml

相关文章

cronolog切割tomcat的catalina.out日志

Linux下运行的Web服务器Apache,默认日志文件是不分割的,一个整文件既不易于管理,也不易于分析统计。安装cronolog后,可以将日志文件按时间分割,易于管理和分析。补充:apache自带的日志分割工具rotatelogs&a…

Tomcat日志切割cronolog

Cronolog 分割 Tomcat8 Catalina.out日志。 默认情况下,tomcat的catalina.out日志文件是没有像其它日志一样,按日期进行分割,而是全部输出全部写入到一个catalina.out,这样日积月累就会造成.out日志越来越大,给管理造成…

使用工具Cronolog进行日志分隔

前言:tomcat日志按日期切割 使用Cronolog 分割 Tomcat9下的catalina.out日志;tomcat的catalina.out日志文件无法按照日期进行自行分割,全部输出并写入到一个catalina.out文件下,如此日积月累就会造成.out日志越来越大&#xff0c…

Linux下tomcat日志分割工具cronolog

使用cronolog在Linux 下进行日志分割 1、下载编译安装 点击下载:cronolog-1.6.2.tar.gz 上传至Linux的/usr/local/src/07.cronolog下 执行解压: tar –zxvf cronolog-1.6.2.tar.gz 编辑配置 cd cronolog-1.6.2 ./configure 编译…

日志切割工具cronolog详解

日志切割工具cronolog详解 大家都知道apache服务器,默认日志文件是不分割的,一个整文件既不易于管理,也不易于分析统计。本文主要讲解Web服务器日志切割工具cronolog,下面我们就来详细的讲解一下。 1.上传及安装日志轮询工具cro…

win cronolog tomcat 日志分割

首先找到tomcat得bin目录录下边得startup.bat 编辑文件 call "%EXECUTABLE%" start %CMD_LINE_ARGS% 换成 call "%EXECUTABLE%" run %CMD_LINE_ARGS% 修改之后 如下 cronolog.exe 去下边得链接去下载,我也是花了一块钱去下载的,找…

tomcat 配置 cronolog

1、将文件复制到制定目录下,解压文件 tar xf cronolog-1.6.2.tar.gz 2、进入目录 cd cronolog-1.6.2 运行配置 ./configure &>/dev/null 3、执行 make &>/dev/null make install &>/dev/null 4、最后修改 tomcat bin目录下catalina.sh …

java日志切割工具_Cronolog日志分割工具

释放双眼,带上耳机,听听看~! 下载安装Cronolog wget http://rpmfind.net/linux/epel/7/x86_64/Packages/c/cronolog-1.6.2-14.el7.x86_64.rpm rpm -Uvh cronolog-1.6.2-14.el7.x86_64.rpm #验证cronolog安装路径 which cronolog /sbin/cronol…

Linux 日志切割工具cronolog无root权限安装

1、下载安装包,我这下载的是cronolog-1.6.2.tar.gz 2、放到自己有权限的目录下面比如 /home/cronolog/ 3、解压 tar zxvf cronolog-1.6.2.tar.gz 4、进入cronolog安装文件所在目录 cd cronolog-1.6.2 2.4 运行安装 ./configuremakemake install 注&#xff…

日志分隔工具Cronolog的使用

Cronolog 分割 Tomcat8 Catalina.out日志。 默认情况下,tomcat的catalina.out日志文件是没有像其它日志一样,按日期进行分割,而是全部输出全部写入到一个catalina.out,这样日积月累就会造成.out日志越来越大,给管理造成…

Linux日志切割工具cronolog详解与安装

1,cronolog的介绍 cronolog 是一个简单的过滤程序,读取日志文件条目从标准输入和输出的每个条目并写入指定的 日志文件的文件名模板和当前的日期和时间。当扩展文件名的变化,目前的文件是关闭,新开辟的。 cronolog 旨在和一个Web…

EXMC(FSMC)转BRAM,实现单片机与FPGA的交互,FPGA端

目录 1. 前言1.1 需求1.2 平台 2. 背景知识3. 实操3.1 工程介绍3.2 接口介绍3.2.1 EXMC信号介绍:3.2.2 BRAM接口介绍3.2.2 对比 3.3 代码: 5. 附录 1. 前言 在国产的GD32和复旦微FPGA之间实现较高带宽的数据通信,可以使用EXMC接口。EXMC接口…

FPGA逻辑资源评估之BRAM(以Xilinx为例)

在FPGA逻辑设计时,需要参考所需逻辑资源对FPGA进行选型,其中一项就是对BRAM的评估,在这里以xilinx UltraSCALE系列FPGA为例,对BRAM进行简单介绍。 FPGA中RAM资源一般分为DRAM和BRAM两种,而Xilinx UltraSCALE系列FPGA除…

xilinx BRAM实现FIFO

许多FPGA设计使用BRAM来实现FIFO。在Xilinx 7系列体系结构中,块RAM中的专用逻辑能够实现同步或双时钟(异步)FIFO。这消除了计数器、比较器或状态标志生成所需的额外CLB逻辑,并且每个FIFO仅使用一个块RAM资源。支持标准和首字跳转&…

【正点原子FPGA连载】 第十八章基于BRAM的PS和PL的数据交互 摘自【正点原子】DFZU2EG_4EV MPSoC之嵌入式Vitis开发指南

1)实验平台:正点原子MPSoC开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id692450874670 3)全套实验源码手册视频下载地址: http://www.openedv.com/thread-340252-1-1.html 第十八章基于BRA…

Xilinx 7系列 BRAM概述

Xilinx7系列FPGA中的块RAM可存储36 Kb的数据,可以配置为两个独立的18 Kb RAM或一个36 Kb RAM。在简单双端口模式下,每个36 Kb块RAM可以配置为64K x 1(与相邻的36 Kb块内存级联时)、32K x 1、16K x 2、8K x 4、4K x 9、2K x 18、1K…

ZYNQ—BRAM全双工PS_PL数据交互(开源)

本资源实现了:采用ZYNQ7010;vivado 2018.3;xilinx sdk;正点原子XCOM串口助手,PS与PL均读写操作。 1、PS写0-9地址 0-9数据,触发start给PL。 2、PL接收到触发后,做两次的打拍,再遍历一…

FPGA — BRAM 队列实践

使用软件: Vivado 开发板: EGO1采用Xilinx Artix-7系列XC7A35T-1CSG324C FPGA BRAM 队列实践 功能描述功能实现1. 添加BRAM的IP2. 数码管显示3. 时钟分频4. 按键消抖5. 顶层设计 结果遇到问题及解决仿真测试 功能描述 数码管3位显示数字,可以…

Vivado综合生成BRAM及与LUTRAM的区别

使用vivado中的BRAM可以通过例化Block Memory Generator这一ip并进行相关的设定。 另外可以通过直接编写符合BRAM规范的代码,借助综合工具直接将其综合为BRAM。这时需要通过(*ram_style"block"*)对array进行修饰。 下面给出一种看似可以综合为BRAM的示例…

Xilinx BRAM IP介绍

BRAM IP核介绍 BRAM简介BRAM类型三种读写模式写优先读优先No change 总线支持输出寄存 BRAM简介 BRAM,即Block RAM,是FPGA中一种重要的存储资源,另一种常见的存储资源是DRAM(Distributed RAM),Distributed RAM 经过综合工具综合&…