0

我想用Java编写一个工具来监控生产服务器上的日志文件,并且日志文件不时增加。

该工具将从日志文件中获取每个新的附加行,对其进行解析并执行某些操作。

是否可以从实时日志文件中读取数据?如果是,该怎么做?

4

1 回答 1

0

那里有各种数量的 java 文件轮询器(文件监控)库(例如jPoller)。

如果您使用的是 java 7,请查看WatchService API(NIO.2 的一部分),它会在您监视的文件发生更改时通知您。

如果您可以使用 3rd 方库,请查看 Apache 的 commons-vfs2 - DefaultFileMonitor

示例用法:
FileSystemManager fsManager = VFS.getManager();

FileObject listendir = fsManager.resolveFile("/home/username/monitored/");

DefaultFileMonitor fm = new DefaultFileMonitor(new CustomFileListener());
fm.setRecursive(true);
fm.addFile(listendir);

fm.start();

于 2013-11-01T08:11:15.013 回答