如何在JBoss 运行 时清除JBoss 的server.log 文件?当我尝试做的时候
echo 1 > server.log
我收到错误消息,提示文件正在被另一个程序 (JBoss) 使用。是否可以使用命令行工具(windows 或 linux(我有 CygWin))或我可以自己编写的应用程序清除该文件?
附言我不需要该文件有 0kb,但我希望它有小于 100MB。
最佳答案
默认情况下,JBoss 保持文件锁定,因为它正在向其中写入日志消息。只要 JBoss 正在运行,它就会被锁定,除了停止 JBoss 本身,我不知道还有什么其他方法可以释放它。
为了控制它的大小,你可以修改你的日志配置,它默认在<server>/conf˛jboss-log4j.xml
中。 .您可以指定日志文件的最大大小,并定义达到该大小时要执行的操作:滚动到新文件、截断现有文件并重新开始写入等。
一个基本示例(未经测试,因此不能保证它按原样直接工作):
<appender name="ROLL" class="org.apache.log4j.rolling.RollingFileAppender">
...
<param name="maxFileSize" value="100MB" />
...
</appender>
此外,使用 maxBackupIndex
参数您可以定义备份文件的数量(默认为 1)。
关于java - JBoss中如何清除server.log?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4603394/