daemons-rails icon indicating copy to clipboard operation
daemons-rails copied to clipboard

Daemons::Rails::Monitoring.statuses doesn't work in production

Open rickygu opened this issue 11 years ago • 7 comments

When I call Daemons::Rails::Monitoring.statuses in development, it works fine, but on my production server, it returns not_exists even though the daemons are running.

rickygu avatar Sep 30 '13 08:09 rickygu

Do you have only one production server and are daemons running on same machine as application?

hospital-systems avatar Sep 30 '13 10:09 hospital-systems

yes, only 1 production server

rickygu avatar Sep 30 '13 11:09 rickygu

Ok. Can you describe layout for your daemons? (i.e. lib/daemons/__ctl or app/daemons/__ctl etc) What returns command bundle exec lib/daemons/<your_daemon_name>_ctl status on your production server? Are you sure your daemons are working well and doesn't crashes and restarts? And what is result of ruby code run from rails console - Daemons::Rails::Monitoring.default.controllers?

hospital-systems avatar Sep 30 '13 13:09 hospital-systems

daemons are in lib/daemons

bundle exec lib/daemons/<your_daemon_name>_ctl status -> daemon.rb: running [pid 6334] daemons are working for sure because otherwise my app wouldn't be working.

Daemons::Rails::Monitoring.default.controllers works fine in console production, but when i do

<%= Daemons::Rails::Monitoring.statuses["daemons.rb"] %> in the view it return "not_exists".

rickygu avatar Oct 01 '13 03:10 rickygu

Is it behave same if you set instance variable in controller and then display in view? Also, it may be result of page caching and actually you see old version of page when daemons not yet run. So, try to add timestamp to this page - will it change on reload? It it will not help - it may be helpful if you create simplest not working version of application and send me by email or share through github. I just checked your use case and it works for me, so I need more details to find problem.

hospital-systems avatar Oct 01 '13 08:10 hospital-systems

just tried setting the instance variable in the controller but no dice. still shows not_exists when the daemons are clearly running. I'm using Rails 4.0.0 and daemons-rails (1.2.1) and ruby 2.0.0p247.

oh another piece of info, I had to comment out this line in my daemon or it wouldn't start. I don't know if that has anything to do with this problem: #ENV["RAILS_ENV"] ||= "production"

rickygu avatar Oct 02 '13 06:10 rickygu

@rickygu @hospital-systems Did you get this fixed? I'm having the same issue when deploying to a Digital Ocean VPS running Dokku.

ACPK avatar Nov 05 '14 02:11 ACPK