Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 使用乘客和Rails应用程序启动nginx时,如何访问Rails应用程序的控制台(stdout)?_Ruby On Rails_Ruby_Nginx_Console_Bundler - Fatal编程技术网

Ruby on rails 使用乘客和Rails应用程序启动nginx时,如何访问Rails应用程序的控制台(stdout)?

Ruby on rails 使用乘客和Rails应用程序启动nginx时,如何访问Rails应用程序的控制台(stdout)?,ruby-on-rails,ruby,nginx,console,bundler,Ruby On Rails,Ruby,Nginx,Console,Bundler,我使用Phusion Passenger运行Rails应用程序。我在nginx目录中有一个confing,因此当我重新启动nginx时,我可以运行我的Rails应用程序 然而,我有一些应用程序的问题,所以我想看看控制台的错误输出。如果我在Rails应用程序目录中显式地使用乘客启动命令运行Rails应用程序,则不会发生错误 因此,当Rails应用程序使用nginx运行时,我需要从控制台获得实时输出 问题是:Rails公共目录(即/public/downloads/…)中的我的下载目录中没有写入任何

我使用Phusion Passenger运行Rails应用程序。我在nginx目录中有一个confing,因此当我重新启动nginx时,我可以运行我的Rails应用程序

然而,我有一些应用程序的问题,所以我想看看控制台的错误输出。如果我在Rails应用程序目录中显式地使用
乘客启动
命令运行Rails应用程序,则不会发生错误

因此,当Rails应用程序使用nginx运行时,我需要从控制台获得实时输出

问题是:Rails公共目录(即
/public/downloads/…
)中的我的下载目录中没有写入任何文件。我使用以下方法编写文件:

open(file_path, 'wb') do |file| 
 ...
 file << open(url)
 ...
end
open(文件路径,'wb')do |文件|
...

文件您可以通过转到生产服务器上的app文件夹并执行
tail-f log/production.log
来实时查看日志文件

您还可以按照建议在生产环境文件中覆盖应用程序的
stdout


通过转到生产服务器上的app文件夹并执行
tail-f log/production.log
,您可以实时查看日志文件

您还可以按照建议在生产环境文件中覆盖应用程序的
stdout


乘客将日志条目(包括应用程序的输出)发送到web服务器的日志文件

例如,对于Nginx,这是全局Nginx错误日志文件。您可以改为使用该指令将Passenger配置为将日志输出发送到特定文件

更多信息:


您可以使用Nginx指令设置此输出的目标。它可以直接发送到远程系统日志服务器,如Papertrail。

乘客将日志条目(包括应用程序的输出)发送到web服务器的日志文件

例如,对于Nginx,这是全局Nginx错误日志文件。您可以改为使用该指令将Passenger配置为将日志输出发送到特定文件

更多信息:


您可以使用Nginx指令设置此输出的目标。它可以直接发送到远程系统日志服务器,如Papertrail。

它不会写入Rails logger吗?它会,但偶尔我会使用
puts
(是的,真丢脸…)进行所有日志记录,现在我需要控制台来查看应用程序的运行情况。如何实时显示日志文件?要实时查看日志文件:转到生产服务器上的应用程序文件夹并执行
tail-f log/production.log
。在apache中,应用程序中的PUT记录在apache的
error.log
文件的
/var/log/apache/
文件夹中。检查一下,对于
nginx
我已经试过了(在SO上也可以找到)。但它不会更新文件…也可以看到:它不会写入Rails logger吗?它会,但偶尔我会使用
puts
(是的,真丢脸…)进行所有日志记录,现在我需要控制台来查看应用程序的运行情况。如何实时显示日志文件?要实时查看日志文件:转到生产服务器上的应用程序文件夹并执行
tail-f log/production.log
。在apache中,应用程序中的PUT记录在apache的
error.log
文件的
/var/log/apache/
文件夹中。检查一下,对于
nginx
我已经试过了(在SO上也可以找到)。但它不会更新文件…请参见以下内容:
std_out = File.new(RAILS_ROOT + "/log/stdout.log","a")
$stdout.reopen(std_out)