我有2个服务器的域设置。
我们在/jboss/hc/console.log
中登录过多(此时不可以降低级别),旋转并没有帮助,因为重启后Jboss会继续写入同一文件,即使已重命名也是如此。
可能是“追加”主题吗?(设置为true)
在停止和启动期间我已经与lsof进行了核对,当我这样做时没有使用该文件的过程
mv console.log console.log.20180000X
尽管如此,在启动hc服务之后,jboss仍然在重命名的日志中写入。
如何配置日志记录,以便文件console.log
正确旋转?
答案 0 :(得分:1)
logrotate的替代方法可能是rotatelogs或cronolog。例如:
./ standalone.sh 2>&1 | / usr / sbin / rotatelogs -l /path_to/console.log.%Y-%m-%d 86400&
答案 1 :(得分:1)
console.log
很可能是通过管道stdout
和stderr
到文件的结果。可能还有另一个日志文件,例如$JBOSS_HOME/domain/logs/host-conroller.log
假设您使用的域服务器包含相同的信息。我建议实际上删除控制台处理程序,而不要尝试旋转console.log
。
要在域服务器中删除控制台处理程序,您需要从服务器中删除该处理程序:
/profile=full/subsystem=logging/root-logger=ROOT:remove-handler(name=CONSOLE)
请注意,您需要在每个使用的配置文件上执行该操作。
接下来,您需要编辑$JBOSS_HOME/domain/configuration/logging.properties
文件并从CONSOLE
属性中删除logger.handlers
处理程序。
请注意,您也可以为$JBOSS_HOME/domain/configuration/default-server-logging.properties
执行此操作。
对于独立版本,它要容易得多。您只需要执行以下CLI命令即可。
/subsystem=logging/root-logger=ROOT:remove-handler(name=CONSOLE)
请注意,在这两种情况下,都假定使用默认的日志记录配置。如果不是这种情况,则需要确保根记录器还附加了某种其他处理程序。