An unhandled lowlevel error occurred. The application logs may have details

Tudor S. picture Tudor S. · May 9, 2016 · Viewed 8.8k times · Source

I'm tyring to deploy a rails app to a digital ocean droplet and all seems to be configured ok but I get this error:

An unhandled lowlevel error occurred. The application logs may have details.

I'm not sure what to do as the logs are empty.

Here's the nginx config:

upstream puma {
  server unix:///home/yourcv.rocks/shared/tmp/sockets/yourcv.rocks-puma.sock;
}

server {
  listen 80 default_server deferred;
  server_name 127.0.0.1;

  root /home/yourcv.rocks/current/public;
  access_log /home/yourcv.rocks/current/log/nginx.access.log;
  error_log /home/yourcv.rocks/current/log/nginx.error.log info;

  location ^~ /assets/ {
    gzip_static on;
    expires max;
    add_header Cache-Control public;
  }

  try_files $uri/index.html $uri @puma;
  location @puma {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_redirect off;

    proxy_pass http://puma;
  }

  error_page 500 502 503 504 /500.html;
  client_max_body_size 10M;
  keepalive_timeout 10;
}

Thank you! :)

Answer

pyfl88 picture pyfl88 · May 9, 2016

This is because you haven't set your secret key correctly. Double check your config/secrets.yml file: It should be something like this:

production: secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>

Then in your droplet, you can run bundle exec rake secret to get your secret key. There are options like dotenv which is a useful gem that loads the contents of a .env file into ENV.