使用java监控文件大小的最佳方法
我想轮换已经由logrotate管理的日志 然而,logrotate只用于每天旋转日志,因为它纯粹是一个CRON任务 当文件大小超过logrotate配置文件的size参数中指定的大小时,我希望执行logrotate。我计划通过监视日志文件来实现同样的功能,并在日志文件的大小超过logrotate配置中指定的大小时执行logrotate使用java监控文件大小的最佳方法,java,logging,logrotate,Java,Logging,Logrotate,我想轮换已经由logrotate管理的日志 然而,logrotate只用于每天旋转日志,因为它纯粹是一个CRON任务 当文件大小超过logrotate配置文件的size参数中指定的大小时,我希望执行logrotate。我计划通过监视日志文件来实现同样的功能,并在日志文件的大小超过logrotate配置中指定的大小时执行logrotate 在java中执行此操作的最佳方法是什么?一种方法是在写入文件且文件大小大于阈值时使用然后执行操作。Unixlogrotatewithsize=100k应该这样做
在java中执行此操作的最佳方法是什么?一种方法是在写入文件且文件大小大于阈值时使用然后执行操作。Unix
logrotate
withsize=100k
应该这样做,但我可能使用了错误的“logrotate”由于此logrotate作为cron任务执行,因此它将仅在指定的时间执行。到那时,如果文件执行的大小需要为大小配置的值,则文件将被旋转。但我的要求是在文件大小超过配置值时调用此logrotate。写入此日志文件的是什么?一些日志系统具有内置的日志旋转功能。我们的是一个合法的代码,修改以使用任何日志框架是一项繁琐的任务来实现和测试。因此,我选择了通过添加逻辑来调用logrotate来坚持现有的功能。。如果我尝试一下,我可以看到这个api是从jdk1.7引入的。我们的构建过程使用jdk1.6,因此不能使用WatchService。如果您知道jdk1.6中的任何其他等效和最佳方式,请务必让我知道。