-
Notifications
You must be signed in to change notification settings - Fork 27
Debugging_Conductor_(production)
Mo Morsi edited this page Jan 11, 2013
·
2 revisions
_I recently was trying to track down an issue that jclift was seeing in his environment, and really wanted to see what was going on line by line. And really didn’t want to add a million print statements only to have to figure out which of the seven log files I need to monitor to see the output.
Enter ruby-debug. First though, I had to be able to run the processes in the foreground and not as services.
- yum install rubygem-ruby-debug -y
- add “gem ruby-debug” to the default section of /usr/share/aeolus-conductor/Gemfile.in
- Create a ~/bin directory
- reduce the ~/bin/aeolus-conductor file to loading external vars and running thin . The up to date startup script is available here: https://github.com/aeolusproject/aeolus-extras/tree/master/debugging_aeolus For anyone needing that startup script, run this to pull it down from the command line: $ wget https://github.com/aeolusproject/aeolus-extras/raw/master/debugging_aeolus/aeolus-conductor
- service aeolus-conductor stop
- aeolus-conductor
- cd /usr/share/aeolus-conductor
- RAILS_ENV=production rake jobs:work
Now, if you add the word “debugger” (which adds a breakpoint for rdebug) to any ruby file under /usr/share/aeolus-conductor/app, you should hit the breakpoint in either conductor or delayed_job. Now you can do all the fancy debugging that you like.