【发布时间】:2012-08-03 02:06:11
【问题描述】:
我需要登录到服务器中的 excel 表,就像普通的 log4j appender 一样,除了 excel 表(这是在 java 中)。
我目前没有找到有关此的适当信息。是否有任何提供附加程序或可以使用的库?还想知道附加到 excel 文件而不是普通文本文件日志、性能、可能的错误等是否有任何影响?
【问题讨论】:
标签: java excel logging log4j appender
我需要登录到服务器中的 excel 表,就像普通的 log4j appender 一样,除了 excel 表(这是在 java 中)。
我目前没有找到有关此的适当信息。是否有任何提供附加程序或可以使用的库?还想知道附加到 excel 文件而不是普通文本文件日志、性能、可能的错误等是否有任何影响?
【问题讨论】:
标签: java excel logging log4j appender
直接记录到 Excel 工作表似乎不是一个好主意。您将“记录”和“分析日志”两种职责混合到一个代码中。
您可能希望将数据导入电子表格以进行特定分析。在这种情况下,您可能还需要特定的格式(关于哪些数据进入哪个表)。考虑编写一个特定的解析器,然后将数据导入 Excel 工作表 - 使用像 apache-poi 这样的 api,这将是直截了当的。
如果您真的想要一个特殊的日志记录,请从 Log to a database using log4j 开始,它解释了数据库日志记录,然后将其制作成 excel。
只要文件系统允许,日志记录是无限的。 Excel(取决于其版本)对可以存储的记录数有限制。 (bemace 的 cmets 中的其他问题)。
【讨论】:
我认为直接回答您的问题可以是:“您可以创建自己的 log4j appender”(这是how,您可以这样做)。从技术上讲,log4j 带有大量的 appender,你可以随时创建一个新的。
此附加程序可能会使用 Apache POI (link),它提供了用于创建和格式化 excel 电子表格的 Java API。
这一切都很好,并且在技术上可行,但在这样做之前我会三思而后行。毕竟使用 Excel 记录日志听起来很尴尬 :)
如果您仍然需要 Excel 电子表格,我可以提出一个折衷方案。 使用“文件附加器”创建 CSV 文件(逗号分隔值)。 excel 将很容易读取这样的文件,并且足以进行初始处理。 您甚至不需要编写附加程序,只需确保正确配置布局即可。
或者,我可以向您指出一些有助于日志处理的工具:
有一个很好的日志查看器列表here,我相信你可以谷歌了解更多信息。
希望对你有帮助
【讨论】:
使用 log4j 和 patternlayout 记录 CSV 格式。然后使用 Chainsaw 分析日志 - Chainsaw 的最新开发者快照改进了配置 UI 并拥有大量新功能,让这一切变得简单:
【讨论】: