在Rails中的生产服务器上进行调试

min*_*eow 5 ruby deployment debugging ruby-on-rails

如何在测试版/生产服务器上有效地调试rails中的实时服务器?

我尝试直接在服务器上修改文件,然后重新启动应用程序,但更改似乎没有生效,或者需要很长时间(缓存?)

我也尝试在本地做"脚本/服务器生产",但这很慢

另一种选择是编码和部署,但效率非常低.

任何人都对他们如何有效地做到这一点有任何见解?

Vla*_*anu 7

我会回答你的问题,即使我不同意这种hotpatching服务器代码的方式:)

首先,您确定已重新启动服务器吗?您可以通过拖尾日志文件来检查它.

可以缓存由更改的代码显示的视图.缓存的页面位于tmp/cache文件夹下.您可以尝试手动删除该文件,也可以rake tmp:cache:clear删除它们.无论如何,你可以通过拖尾log/production.log文件来确切地看到发生了什么(它会告诉你类似'渲染缓存......').

另一点:一些数据也存储在会话中.您也可以尝试删除您的会话(或删除所有会话;如果您将会话保留在DB中,则可以运行rake db:sessions:clear)