2

我需要登录到服务器中的 excel 表,就像普通的 log4j appender 一样,除了 excel 表(这是在 java 中)。

我目前没有找到有关此的适当信息。是否有任何提供附加程序或可以使用的库?还想知道附加到 excel 文件而不是普通的文本文件日志、性能、可能的错误等是否有任何影响?

4

3 回答 3

3

直接登录到 Excel 工作表似乎不是一个好主意。您将两个职责“记录”和“分析日志”混合到一个代码中。

您可能希望将数据导入电子表格以进行特定分析。在这种情况下,您可能还需要特定的格式(关于哪些数据进入哪个表)。考虑编写一个特定的解析器,然后将数据导入到 Excel 工作表中——使用像 apache-poi 这样的 api,这将是直截了当的。

如果您真的想要特殊的日志记录,请从使用 log4j 记录到数据库开始,其中解释了数据库日志记录,然后将其制作为 excel。

只要文件系统允许,日志记录是无限的。Excel(取决于其版本)对可以存储的记录数有限制。(bemace 评论中的其他问题)。

于 2012-08-06T05:09:06.173 回答
2

我认为直接回答您的问题可以是:“您可以创建自己的 log4j appender”(这就是可以做到的方式)。从技术上讲,log4j 带有大量的 appender,你总是可以创建一个新的。

这个 appender 可能会使用 Apache POI (链接),它提供了一个用于创建和格式化 excel 电子表格的 Java API。

这一切都很好,并且在技术上会起作用,但在这样做之前我会三思而后行。毕竟使用 Excel 记录日志听起来很尴尬 :)

如果您仍然拥有 Excel 电子表格,我可以提出一个折衷方案。使用“文件附加器”创建 CSV 文件(逗号分隔值)。excel 将很容易读取这样的文件,并且足以进行初始处理。您甚至不需要编写附加程序,只需确保正确配置布局即可。

或者,我可以向您指出一些有助于日志处理的工具:

阿帕奇电锯

莉莉丝

这里有一个不错的日志查看器列表,我相信您可以通过 Google 搜索更多信息。

希望这可以帮助

于 2012-08-06T05:22:13.213 回答
0

使用 log4j 和 patternlayout 记录 CSV 格式。然后使用 Chainsaw 分析日志 - Chainsaw 的最新开发人员快照改进了配置 UI 并具有大量新功能,使这变得简单:

http://people.apache.org/~sdeboy

于 2012-08-06T18:43:56.373 回答