在Web应用程序中查看日志跟踪

时间:2011-11-04 07:32:06

标签: java java-ee

我有一个使用log4j进行日志记录的j2ee Web应用程序。我想在管理页面上有一个日志查看器。这应该允许用户在应用程序UI上查看log4j日志。有谁知道如何在java中实现,也许, - 实时滚动日志会很棒, - 否则可以说最后500行日志与手动刷新可以完成。 后者使用文件操作的问题是我不确定每次刷新多长时间,因为log4j生成新文件之前日志文件的大小可能是10 MiB。

最好的方法是什么。任何指针都会很棒..谢谢

3 个答案:

答案 0 :(得分:0)

恕我直言,你无法管理像C这样的低级文件,这就是为什么你不能读取文件中的最后一行X而不读取整个文件。

但是Log4j可以将日志发送到数据库(JDBCAppender),并且可以从数据库中轻松管理日志。

答案 1 :(得分:0)

你可以这样做,你必须看看以下结构。

    在你的log4j.xml中为你的应用程序
  1. ,确保你的appender发送到一个可公开访问的文件夹。

  2. 在您的视图应用程序中,每次刷新(页面上的一个refesh按钮),转到服务器,读取文件,将内容喷出到您的页面。

  3. 更好的是,读取请求应该在JMS实现的后面,因此它可以在后台读取而不会阻止前面的查看请求。 IE,如果文件非常大,则不会阻止对servlet的请求。完成读取后,您可以搜索字符串的出现以截断文件内容(可能是输出日期和时间戳)。这将是记忆密集型的,但它已经完成了很多次。

答案 2 :(得分:0)

您可以提供rest api / url来访问服务器日志。人们很容易调试/书签/刷新。