【发布时间】:2011-01-05 20:09:44
【问题描述】:
我正在开发 5 个不同的 Rails 项目,另外还重构了一些项目(从旧版 Rails 迁移到 2.3)——从日志文件中提取错误信息的最佳方法是什么,这样我就可以看到所有折旧警告、运行时错误等等,所以我可以改进代码库吗?
是否有任何可以推荐的服务或库,它们实际上有助于解析 Rails 日志文件?
【问题讨论】:
标签: ruby-on-rails logging logfile-analysis
我正在开发 5 个不同的 Rails 项目,另外还重构了一些项目(从旧版 Rails 迁移到 2.3)——从日志文件中提取错误信息的最佳方法是什么,这样我就可以看到所有折旧警告、运行时错误等等,所以我可以改进代码库吗?
是否有任何可以推荐的服务或库,它们实际上有助于解析 Rails 日志文件?
【问题讨论】:
标签: ruby-on-rails logging logfile-analysis
我发现request-log-analyzer 项目非常有用。
您可以通过 grep 日志查找错误并将其转储出来,但这非常适合收集有关不同操作及其所用时间的所有信息。
这里有一些sample output。
当我接到电话说“我的网站运行缓慢,我需要帮助修复它”时,这是我运行的第一件事。
Hoptoad 和/或 Exceptional 非常适合处理持续错误,但它们不会跟踪日志运行请求。像 New Relic 这样的东西很适合。
【讨论】:
我使用 hoptoadapp,http://www.hoptoadapp.com/pages/home 有一个免费的风格,它将您的错误消息记录到他们的数据库中,并且它们提供了一个易于使用的界面。您所要做的就是安装这个插件:http://github.com/thoughtbot/hoptoad_notifier。
它对过去的错误没有帮助,但对于隔离当前正在运行的应用程序的问题非常有用。
【讨论】:
阅读grep linux 命令。
http://www.cyberciti.biz/faq/howto-use-grep-command-in-linux-unix/
我不知道 Rails 中的错误日志格式是什么,但我在每一行都带有警告或错误,都包含“警告”或“错误”字样。
那么它会是这样的:
grep -E "error|warning" logfile.txt
机器人错误和警告
grep "error" logfile.txt
错误
grep "warning" logfile.txt
警告
如果你想实时查看新的错误和警告,试试这个
tail -f logfile.txt | grep -E "error|warning"
tail -f logfile.txt | grep "error"
tail -f logfile.txt | grep "warning"
希望我能帮助你 ;) 我希望我对 Rails 中的日志格式没有错
【讨论】: