When troubleshooting issues or errors with Discourse it is important you look at your logs. Here’s a listing of where they are and what’s in there.
Your site domain
Administration logs shown in the UI
The Discourse admin panel contains several forms of logging:
- Emails that are sent, skipped, bounced, received and rejected are logged at https://=DOMAIN=/admin/email/sent and the neighboring tabs.
- Staff actions are logged at https://=DOMAIN=/admin/logs/staff_action_logs
- Email addresses and IP addresses that have been banned from registration will be listed at https://=DOMAIN=/admin/logs/screened_emails and https://=DOMAIN=/admin/logs/screened_ip_addresses
- Links posted by accounts that have been banned as spammers are listed at https://=DOMAIN=/admin/logs/screened_urls
- Search analytics logs are shown at https://=DOMAIN=/admin/logs/search_logs
The Logster web UI
Every Discourse instance ships with a GUI log viewer. It is located at: https://=DOMAIN=/logs
Note: if you are on a hosted plan, this page may be hidden from you. Instead, contact support when you’re getting this kind of issue!
If you’re investigating a mysterious 500 error on the forums, you should always try this spot first!
Select an error line to get details about it. You may be asked to provide the contents of the env
and backtrace
tabs here on Meta.
The Rails / Unicorn logs
Ruby on Rails contains a very verbose log which is written to disk. Additionally the web server unicorn also logs to disk.
To access:
cd /var/discourse
./launcher enter app
cd /shared/log/rails
This folder contains “unicorn.stderr.log
”, “unicorn.stdout.log
” and “production.log
” in addition to “rotated” log files. You can use standard Unix tools such as less production.log
to inspect them.
This folder is also available without entering the container as /var/discourse/shared/standalone/log/rails
.
The NGINX logs
Occasionally NGINX logs may contain some extra tips, they are located at:
cd /var/discourse
./launcher enter app
cd /var/log/nginx
The files access.log
and error.log
will be there as well as a bunch of rotated compressed files. Running less access.log.2.gz
will automatically decompress and display the logfile for you.
This directory is also available on the host at /var/discourse/shared/standalone/log/var-log/nginx
.
Redis logs
While it is very uncommon to need to see Redis logs, if you do need them, they go into /var/log/redis
inside the container and /var/discourse/shared/standalone/log/var-log/redis
on the host. The most recent log entries will be in the current
file in that directory.
PostgreSQL logs
If you need to consult the database server logs, they’re in /var/log/postgres
inside the container and /var/discourse/shared/standalone/log/var-log/postgres
on the host; the most recent entries are in the current
file in that directory.