不幸的是,有时调试程序的唯一方法是查看它的长日志文件。
我现在搜索了一个像样的日志查看器,但还没有找到真正的解决方案。唯一似乎最合适的程序是带有 Socket 连接器的Chainsaw,但经过几次短暂的使用后,该程序被证明是错误的并且充其量是无响应的。
出于我的目的,日志查看器至少应该能够标记日志级别(例如使用不同的颜色)并根据包和自由文本执行简单的过滤。
还有其他(免费)日志查看器吗?我正在寻找任何可以与 log4j 一起工作的东西。
只想说我终于找到了一个可以很好相处的工具...
它被称为 LogExpert(参见http://www.log-expert.de/)并且是免费的。除了通常的尾部功能外,它还具有过滤器和搜索功能——BareTail 缺少的两个关键功能。而且,如果您碰巧想要自定义它进一步解析列的方式,那就太简单了。只需在 .NET 中实现一个接口,就完成了(我是一名 Java/Flex 程序员......)
我正在使用OtrosLogViewer。您可以手动或使用字符串/正则表达式标记日志事件。您可以根据级别、时间线程、字符串或正则表达式过滤事件。可以通过监听socket或者连接Log4j SocketHubAppender来导入日志
你可以看一下Youtube 视频或截图:
免责声明:我是 OtrosLogViewer 的作者
你没有提到操作系统,所以我会提到这一点,尽管它只在 Windows 上。
Bare Metal Software 制作了一款名为BareTail的产品,该产品具有漂亮的界面并且运行良好。他们有一个带有启动 nag 屏幕的免费版本,一个没有 nag 的许可版本,以及一个带有附加功能的 pro 版本。 它具有基于与关键字匹配的行的可配置突出显示。
他们也有一个 BareGrep 产品,它提供了类似的 grep 功能。两者都非常出色,非常稳定,比我在 Windows 上看到的任何东西都要好。我非常喜欢它们,我以 50 美元的价格购买了两个专业版的捆绑包。
我正在使用 Notepad++ 和突出显示 UDL 的自定义日志文件。看起来像这样:
你可以试试logFaces,它有很棒的基于 eclipse 设计的实时日志查看器。
披露:我是该产品的作者。
考虑使用Log4j 查看器 Eclipse 插件——它是 Ganemede 插件的分支,现在有更多功能,稳定性得到显着提高,并且仍在积极开发和免费 :)
我一直用'tail -f | grep re' 或偶尔的 'awk'。
LogSaw基于 Eclipse 并且免费。Log4j 日志文件分析器,使用简单,过滤方便。支持多种 log4j 日志文件:JBoss、Log4j 模式布局、Log4j XML 布局、WebSphere。
奇迹般有效。经过几个小时的谷歌搜索并尝试了几个推荐的免费 log4j 查看器,这个令人惊喜。尝试过 Chainsaw、BareTail、Insight、LogExpert、logview4j。
它是几周前发布的,我想它仍然在谷歌上建立起来。
我已成功推出 Splunk ( http://www.splunk.com/ ) 以进行日志查看和搜索。免费版可以在本地使用,付费版可以将您的所有日志收集到一个位置。我们主要将它用于 Log4J 日志,但也有许多其他格式。
除了 tail 和 grep 支持(无需了解 grep...),它会自动索引日志并允许轻松分析(例如,在最后 xx 时间范围内的事件数)以及基本的图表、警报和事件聚合。
我不会说这个应用程序是完美的,也不会说公司已经成熟了。但我毫不犹豫地建议您尝试一下。
我将在 Windows 中添加这一点,具有讽刺意味的是,WireShark 提供了一个方便的系统日志查看器。我已经尝试了其他几个系统日志工具,实际上,Kiwi 是目前最适合系统日志的工具,但是“免费”版本有点被削弱了。我遇到的其他人要么编程不良(在小问题上崩溃——logview4net),要么界面糟糕(Star SysLog Daemon Lite),要么甚至没有运行(nxlog)
您可以使用 WireShark 的过滤器语言来深入了解日志数据。这是矫枉过正,但直到有人为 Windows 编写一个免费的 syslog 查看器/收集器并使其变得体面,这对大多数人来说都是一个很难的领域。
例子:
# Display level 6 alerts from 192.168.5.90 in WireShark
syslog.level == 6 && ip.addr == 192.168.5.90
LogMX是一个跨平台工具,可以解析来自任何来源的任何日志格式,然后显示具有许多功能的日志条目。默认情况下,它处理诸如 Log4j、LogFactor、syslog 等格式,并且可以从本地文件或 SFTP、FTP、HTTP 中读取...但是如果您的格式是另一种格式或者您的日志不能是,您可以编写自己的插件通过经典协议访问。
您可以像“tail”一样实时监控日志,也可以加载整个日志文件并停止监控。
根据您运行的平台和可用的其他日志查看工具,您可以使用适当的 log4j appender(syslog、Windows 事件记录器)并使用您的平台日志查看工具。
除此之外,我通常会看到开发定制解决方案。
推动您的解决方案的是您的整个系统是什么样的。您是否正在尝试汇总来自多台计算机的日志?或者只是查看来自单个远程进程的日志?
您可能希望使用仅适用于文件的自定义日志查看器。我喜欢Kiwi Log Viewer或 Ganymede(一个 Eclipse 插件),但是将一个简单的从套接字读取的 Swing 应用程序放在一起并不难。
查看http://jlogviewer.sourceforge.net/或http://sourceforge.net/projects/jlogviewer/ Java 日志查看器是轻量级的 GUI,可以轻松查看“java.util.logging”生成的 Java 应用程序日志包裹。它是开源的!!
您可以使用MindTree Insight,它是开源的、高效的,并且专门针对该用例:分析 log4j 文件。
我为此编写了一个自定义工具:https: //plus.google.com/u/0/102275357970232913798/posts/Fsu6qftH2ja
Alfa 是一个用于分析日志文件的 GUI 工具。通常,您被迫使用编辑器在其中搜索数据。您打开一个日志,一次又一次地按 Ctrl-F 和“下一步”按钮,然后重新加载修改过的文件,然后重复搜索。Alfa 将日志文件映射到数据库,允许您使用标准 SQL 查询来获取数据,而无需任何多余的操作。
UPD:谷歌杀死了谷歌+,所以请使用其他链接:https ://drive.google.com/drive/folders/0B-hYEtveqA0aN1E3Ul9NVlFlYWM
另一个不错的日志查看器是 Lilith(http://sourceforge.net/projects/lilith/和http://lilithapp.com/)。它是开源的,可与 Logback、log4j 和 java.util.logging 配合使用。
刚刚发布了一个用于颜色高亮日志输出log-color-highlight的节点模块。
echo "this string" | lch -red.bold this -blue string
在 unix/linux/windows 上运行良好,并支持复杂日志场景的配置文件。
对于 Windows,我将它与file-tail结合使用