我可以获取Heroku日志只返回概述错误的行吗?

时间:2011-12-22 17:20:57

标签: ruby-on-rails ruby-on-rails-3 heroku logging

当出现问题时,heroku日志是检查应用程序发生了什么的绝佳资源。不幸的是,它们还记录了大量信息。有什么方法可以只为错误消息过滤日志吗?

7 个答案:

答案 0 :(得分:18)

试试这个:

heroku logs -t | grep 'error'

获取错误的运行列表。

'error'周围的引号为我做了。

答案 1 :(得分:10)

heroku logs | grep -i error

您还可以安装New Relic插件,该插件会报告详细的错误跟踪。我也听说过Loggly的好消息。

另见heroku - how to see all the logs

答案 2 :(得分:2)

我个人认为日志不是最好看的地方,因为错误和细节很容易错过。我会确保我的代码将错误提升到外部位置,以确保它们不会错过。

有许多选项,从简单的ExceptionNotifier到更高级的系统,例如Airbrake(这是我自己使用的)。

这些不仅会通知您错误,而且还会为您提供一堆可以使用的元信息。

答案 3 :(得分:1)

我们管理在Heroku上托管的高流量网站,NewRelicAirbrake的组合是如此大的#win。

你试过这些吗?完全值得,Heroku可以很容易地将它们集成到您的应用程序中。

答案 4 :(得分:0)

看看一些日志插件 - 我使用PaperTrail取得了很大的成功,但其他像Loggly和Progstr Logging将提供类似的服务。

基本上你将日志排入他们的服务中,他们提供了对你的日志进行实时搜索的能力,然后你可以处理它 - 大多数会通过篝火,电子邮件,短信或简单的HTTP帖子提供某种通知进入其他一些应用程序来处理错误信息。

答案 5 :(得分:0)

用于检查heroku控制台中的所有日志

config.logger = Logger.new(STDOUT) config.logger.level = Logger :: DEBUG

将这两行放在运行heroku app的环境中(例如production.rb)

如果有的话,您也可以查看详细日志。

答案 6 :(得分:0)

不要忘记--app标志。例如

heroku日志--app my-live-app | grep -i错误

我发现有用的是-d参数:设置日志的类型,例如-d网站 当您有工作人员在后台运行任务并且只想查看Web发生了什么时,这很好。

否则,@ leonardoborges说的我同意。 NewRelic或类似产品可以很好地工作。