我已经编写了使用Java.util.logging的软件。它在客户端PC上运行。我正在使用FileHandler将某些条目记录到文件中。该文件位于服务器上。如果服务器消失了一点,然后返回(或发生了一些其他临时错误),FileHandler会做什么?

我偶尔会看到一些情况,其中日志记录未能写入文件(数小时或数天)。我需要停止/启动软件以重新启动日志记录。我希望有一种方法可以从“临时”文件问题中恢复,无论它是由类提供的,还是我需要编写代码的问题。

注意:我使用Java 1.4.2(wince),因为我在专有硬件上使用专有操作系统。就是这样!

最佳答案

FileHandler使用java.io.FileOutputStream写入日志记录。如果写入失败,则FileHandler将回退到使用assigned ErrorManager。默认的ErrorManager只会将第一个失败写入控制台,然后忽略所有错误。如果要更改该行为,则必须安装自定义ErrorManager。

由于您使用的是专有硬件上的专有操作系统,因此您应该仅使用FileOutputStream或FileHandler模​​拟测试用例并模拟错误情况。

10-08 03:43