如何更正删除catalina.out



我无法重新启动Tomcat Web服务器。但是卡塔琳娜,我们变得非常大。我已尝试在测试服务器上删除,并创建了新的空。但是Tomcat不再在新的catalina.out中编写了。如何正确地删除/创建空的新catalina.out?

如果您使用的是Gnu/Linux或Mac OS X,您可以执行以下操作:

echo "" > catalina.out

甚至更短:

> catalina.out 

对我来说

echo "" > catalina.out

sudo echo "" > catalina.out

不起作用,因为该文件是用root/其他用户权限创建的

sudo truncate -s 0 catalina.out

为我工作。这里-s表示大小,我将文件大小设置为0

在Tomcat的基本安装中,catalina.out通常是通过Tomcat启动器脚本重定向stdout/stderr的结果。

如果您在Unix系统上运行Tomcat,并且在Tomcat运行时删除了该文件,那么问题是进程仍将打开该文件的描述符并继续在其上进行写入。因此,解决方案是使用专用于处理此类情况的程序。例如,logrotate(在几乎所有的Linux发行版中都是标准的)。

使用tomcat服务器时,磁盘使用量会随着日志在catalina.out文件中的累积而增加,这是很正常的。

如果在tomcat停止后删除catalina.out,则一旦tomcat启动并写入,它将创建一个新的catalina.out。但在您的情况下,由于catalina.out是在tomcat运行时删除的,因此它会保留文件引用并写入已删除的文件。您可以通过重新启动tomcat服务器来消除此问题。

实际上,您可以使用以下命令在不停止tomcat的情况下清除catalina.out文件的日志。

sudo cat /dev/null > /opt/tomcat/apache-tomcat-9.0.37/logs/catalina.out  

要保持catalina.out较小并备份较旧的日志,可以使用以下任一方法:

  1. 您可以使用上面的Linux命令并将其添加到CronScheduler根据需要每天/每周/每月或每年运行。

  2. 使用Linux中的logrotate工具。它是一个日志管理命令行工具在Linux中。这可以在不同的条件下旋转日志文件。特别是,我们可以在固定的持续时间内轮换日志文件,或者如果文件已增长到一定大小您可以单击此处了解更多信息这方面的信息。

相关内容

  • 没有找到相关文章