最近在研究项目时,发现linux操作系统中,catalina_home/logs/catalina.out的文件有几个G的大小,便上网查了下这个文件的生成方式及如何避免,下面是我整理的材料:

之前我们在linux系统下查看日志的时候,总有个习惯,启动项目后会进入logs/下,敲击类似 tail -fn500 catalina.out的命令,便可以进入到catalina.out中实时的显示出最新的500行信息,但是有个问题,在windows系统中我们却没发现这个catalina.out,难道是只有在linux系统下才有catalina.out文件吗?

  其实不是这样的,首先说下为什么在linux下是叫catalina.out,这是由于catalina_home/bin/catalina.sh文件指定的,参看下面部分源码:

shift
  touch "$CATALINA_BASE"/logs/catalina.out
  if [ "$1" = "-security" ] ; then
    echo "Using Security Manager"
    shift
    "$_RUNJAVA" $JAVA_OPTS "$LOGGING_CONFIG" $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_BASE"/logs/catalina.out 2>&1 &

if [ ! -z "$CATALINA_PID" ]; then
        echo $! > $CATALINA_PID
      fi

注:touch命令可以创建一个不存在的文件

  那么同理可以想象在windows下也可以存在catalina.out文件(只是默认建的文件不叫这个名而已),那么可不可以在windows系统下也看的见,或者说创建出catalina.out呢?答案是肯定的,参考如下:

  由于tomcat本身是可以跨平台的,故既然有linux下的catalina.sh,就会对应有windows下的catalina.bat

  注意这里我们要修改两部分:

  1、打开bin下面的startup.bat文件,把call "%EXECUTABLE%" start %CMD_LINE_ARGS%,修改为call "%EXECUTABLE%" run %CMD_LINE_ARGS% 。
  2、打开bin下面的catalina.bat文件,会发现共有4处%ACTION%,在后面分别加上“>>%CATALINA_BASE%\logs\catalina.out”。
     重启tomcat,就会发现在logs文件夹下出现了catalina.out文件,把原来控制台的信息全写进去了。
  3、你可以使用hoo wintail软件打开catalina.out文件就能像linux下一样查看日志了。

注:Hoo WinTail是一款Windows下的文件查看程序,有点类似Unix的tail-f,可以查看不断增大的文件尾部.它非常适合于在文件生成的同时实时查看诸如应用程序运行记录或者服务器日志之类的文件.它可以查看一个巨大的文件的最后的部分而不需要载入整个文件.它是一个文件查看器,以只读方式打开文件,不会改动打开的文件.当有其他程序向该文件写入新行时,Hoo WinTail会读取新行并显示出来.它可以读取并显示任何文本文件,不支持.doc文件.xls文件,或者其他特别文件。

tomcat catalina.out(一,windows下的catalina.out)的更多相关文章

  1. Nginx+Tomcat在Windows下做负载均衡

    一. 为什么需要对Tomcat服务器做负载均衡 Tomcat服务器作为一个Web服务器,其并发数在300-500之间,如果有超过500的并发数便会出现Tomcat不能响应新的请求的情况,严重影响网站的 ...

  2. 解决Linux下Tomcat日志目录下的catalina.log日志文件过大的问题

    本文摘自:(http://blog.csdn.net/stevencn76/article/details/6246162) 分类: Java技术专区2011-03-13 12:25 5017人阅读  ...

  3. 让Windows下的Tomcat将控制台信息记录到日志

    在开发的过程中经常出现包冲突,却不知道怎么回事,可以在 catalina.bat 里面设置查看class加载日志   set CATALINA_OPTS=-server -Xdebug -Xnoage ...

  4. windows下tomcat切割日志按照日期输出

    windows下tomcat默认不会把应用的日志信息输出在日志文件中的,只会在控制台打印. 解决方法: 1,下载工具cronolog-1.6.1-win32.zip,并解压. 2,把cronolog. ...

  5. windows下配置两个或多个Tomcat启动的方法

    确保window的环境变量中找不到CATALINA_HOME和CATALINA_BASE 修改server.xml,用解压版的tomcat,不要用安装版的. 1.修改http访问端口 conf下的se ...

  6. Windows下Tomcat调优

    windows tomcat 优化 1.  tomcat conf server.xml 在server.xml中修改以一部分,增加节点数目,可以很好的提高性能: <Connector port ...

  7. windows下注册tomcat服务以及设置jvm参数

    注册服务: 1 >cd /d D:\Java\tomcat-7.0.57-Css\bin //进入目录 1 >service.bat install  //注册服务,同理删除服务为 rem ...

  8. 【Tomcat】 windows下注册tomcat服务以及设置jvm参数

    注册服务: 1 >cd /d D:\Java\tomcat-7.0.57-Css\bin //进入目录 1 >service.bat install  //注册服务,同理删除服务为 rem ...

  9. Windows下tomcat进程监控批处理程序

    在Windows下tomcat进程监控批处理程序脚本如下: @echo off ::tomcat安装目录 set _tomcatDir=E:\myFiles\apache-tomcat-8.5.31 ...

随机推荐

  1. Kylin介绍

    转:http://blog.csdn.net/yu616568/article/details/48103415 Kylin是ebay开发的一套OLAP系统,与Mondrian不同的是,它是一个MOL ...

  2. linux awk命令详解--转载

    awk是行处理器: 相比较屏幕处理的优点,在处理庞大文件时不会出现内存溢出或是处理缓慢的问题,通常用来格式化文本信息 awk处理过程: 依次对每一行进行处理,然后输出 awk命令形式: awk [-F ...

  3. 【Python】【fmt】

      [练习]    #练习1:format print(format(3.44444,'.3e')) #3.444e+00 #练习2:findall() & finditer()import ...

  4. Codeforces Beta Round #94 div 1 D Numbers map+思路

    D. Numbers time limit per test 2 seconds memory limit per test 256 megabytes input standard input ou ...

  5. Jmeter 处理Unicode编码转为中文

    对于接口中返回报文,有的接口返回信息是Unicode编码,写断言的时候,要么就Response Assertion就写成Unicode编码的断言,如下图: 真心不觉得返回报文加密能有多安全,别人将报文 ...

  6. typeof

    1.用法 typeof num typeof(num) 2.返回值    "number"."string"."boolean"." ...

  7. Selenium之Action Chains类

    Action Chains类常用于模拟鼠标的行为,比如单击,双击,拖拽等行为,使用下面的方法导入Action Chains类 from selenium.webdriver.common.action ...

  8. 雷林鹏分享:C# 文件的输入与输出

    C# 文件的输入与输出 一个 文件 是一个存储在磁盘中带有指定名称和目录路径的数据集合.当打开文件进行读写时,它变成一个 流. 从根本上说,流是通过通信路径传递的字节序列.有两个主要的流:输入流 和 ...

  9. android--------自定义弹幕控件(视频弹幕操作)

    弹幕功能在很多平台上都有,直播平台,视频播放器,音乐等上面都有, 直播平台发送弹幕和主播互动,那么弹幕效果是怎么实现的呢. 案例主要是实现视频出现弹幕,可以文字和表情弹幕,启动和关闭弹幕,发布弹幕. ...

  10. Skills CodeForces - 614D (贪心)

    链接 大意: $n$门课, 第$i$门分数$a_i$, 可以增加共$m$分, 求$cnt_{mx}*cf+mi*cm$的最大值 $cnt_{mx}$为满分的科目数, $mi$为最低分, $cf$, $ ...