The heroku logs are a great resource to check what happened to your app when things go wrong.. Unfortunately, they also log a great deal of information. Is there some way I can filter the logs just for error messages?
7 Answers
Try this:
heroku logs -t | grep 'error'
To get a running list of errors as and when they occur.
The inverted commas around 'error'
did it for me.

- 20,944
- 9
- 74
- 82
-
If this isn't working quite right for you, especially if you are chaining multiple greps, then try adding the `--line-buffered` switch on `grep`. `heroku logs -t` is a continuous stream, so grep might need this cue. – chris finne Jul 17 '19 at 23:14
heroku logs | grep -i error
You can also install the New Relic add-on, which reports detailed error traces. I've heard good things about Loggly, too.
See also heroku - how to see all the logs
-
Perhaps you don't have any errors in the few lines that 'heroku logs' returns. You could try the 'heroku console' method suggested in the link in my answer. – rkb Dec 23 '11 at 00:30
-
@jay this methods works -- try `heroku console | grep -i get` and you'll see it work for gets. apply for error – Jesse Wolgamott Dec 23 '11 at 02:40
-
1`heroku logs` doesn't tail the logs, it only prints out a set number of lines. You'll need to add the `-t` or `--tail` for this answer to work. – Gavin Miller Oct 24 '14 at 00:52
Personally I think that logs aren't the best place to look as the error and the detail are easily missed. I would ensure that my code was raising errors to an external location to ensure that they don't get missed.
There's a number of options ranging from the simple ExceptionNotifier, to more advanced systems such as Airbrake (which is what I use myself).
Not only will these notify you of the errors, but they'll also given you a stack of meta information that you can use.

- 22,105
- 18
- 80
- 134
We manage a high traffic website hosted on Heroku and he combination of NewRelic and Airbrake is such a big #win.
Have you tried these? Totally worth it and Heroku makes it dead easy to integrate them in your app.

- 5,579
- 1
- 24
- 26
for checking all the logs in heroku console
config.logger = Logger.new(STDOUT) config.logger.level = Logger::DEBUG
put these two lines inside the environment on which you are running your heroku app(e.g. production.rb)
You can check detail logs there also errors too if any.

- 255
- 3
- 5
Don't forget the --app flag. e.g.
heroku logs --app my-live-app | grep -i error
What I found helpful was the -d parameter: setting the type of log e.g. -d web Good when you have workers running tasks in the background and you just want to see whats going on with Web.
Otherwise what @leonardoborges said I'd agree with. NewRelic or similar can work well.

- 161
- 3
- 16
Take a look at some of the logging addons - I use PaperTrail with much success but the others like Loggly and Progstr Logging will offer similar services.
Essentially you drain your logs into their services and they provide the ability to perform realtime searches against your logs and then you can handle it - most will offer some kind of notification either via campfire, email, text message or a simple HTTP post into some other application to handle the error message.

- 37,398
- 8
- 88
- 97