我有一个Java应用程序运行在远程服务器上(debian linux)。 该应用程序将运行时信息logging到文件。
有一段时间,支持需要使用客户端工具(不在服务器上运行,而是在支持桌面上)分析日志。 该工具然后需要远程访问
我正在寻找一个好的(标准的,灵活的,安全的,良好的debugging等)的方式来stream这些过去和现在的日志消息到我的客户端工具。
怎么会这样做?
图书馆是否存在,它提供这种服务?
系统日志可以适应做到这一点?
编辑:出于隐私的原因,日志文件应该只存储在远程服务器上,通常不会发送到中央日志logging服务。
为什么不使用Log4j的功能作为日志文件的发布者通过TCP传输到远程服务器? Log4j是一个标准的Java日志记录工具(众所周知/有据可查),设置远程连接非常简单。
我过去曾经使用过这种方式来跨网络传输,并将来自多台机器的日志文件整理成一个共同的可搜索目录结构(当你不知道你的进程可以在哪里运行时,在网格环境中非常有用)
看到这个页面的更多细节。
最简单的方法很可能是在Linux上设置samba,这样您就可以远程访问日志,因为它们被更新而不必复制。
你可以使用rsync。 这使您可以安全地将更改复制到机器之间的文件。 即附加文件只会复制自上次rsync以来的更改。 注意:您必须反复运行以保持看到更新。
如果可以修改工具来支持SSH,例如通过VFS,那么您可以像访问本地一样访问远程文件。