我想用Java编写一个工具来监视生产服务器上的日志文件,并且日志文件会不时增加。
该工具将从日志文件中获取每个新的附加行,解析它并执行某些操作。
是否可以从实时日志文件中读取数据?如果是的话,怎么做?
答案 0 :(得分:0)
那里有各种数量的java文件轮询器(文件监控)库(例如jPoller)。
如果您使用的是java 7,请查看WatchService API(NIO.2的一部分),它会通知您 当您监控的文件发生变化时。
如果你可以使用第三方库,请查看Apache的commons-vfs2 - DefaultFileMonitor
用法示例:
FileSystemManager fsManager = VFS.getManager();FileObject listendir = fsManager.resolveFile( “/家/用户名/监测/”);
DefaultFileMonitor fm = new DefaultFileMonitor(new CustomFileListener());
fm.setRecursive(真);
fm.addFile(listendir);fm.start();