Ruby on rails Rails 3.2:12因子应用程序

Ruby on rails Rails 3.2:12因子应用程序,ruby-on-rails,12factor,Ruby On Rails,12factor,在web应用程序宣言“”的日志部分,它建议每个进程将日志发送到STDOUT 如果我在本地使用web服务器进程(“Rails服务器”)和后台作业的Sidekiq进程(“bundle exec Sidekiq”)进行Rails开发,我希望日志显示在单个流中,但我仍然希望在模型、视图、控制器和Sidekiq工作人员中使用STDOUT 是否有一种方法或工具能够将两个标准输出流合并在一起,以便将日志存储在一个流中,以便通过跟踪单个文件来查看日志?这将取决于您运行的操作系统 在类unix控制台上,您可以在后

在web应用程序宣言“”的日志部分,它建议每个进程将日志发送到STDOUT

如果我在本地使用web服务器进程(“Rails服务器”)和后台作业的Sidekiq进程(“bundle exec Sidekiq”)进行Rails开发,我希望日志显示在单个流中,但我仍然希望在模型、视图、控制器和Sidekiq工作人员中使用STDOUT


是否有一种方法或工具能够将两个标准输出流合并在一起,以便将日志存储在一个流中,以便通过跟踪单个文件来查看日志?

这将取决于您运行的操作系统

在类unix控制台上,您可以在后台在单个控制台上运行两个进程:

> rails server &
> bundle exec sidekiq &
这将向当前控制台吐出两个的stdout,但是您需要通过pid显式地关闭它们,例如,
kill`pgrep-f rails`

或者,您可以运行它们中的每一个,并将它们的输出附加到一个文件中,然后跟踪该文件(在单独的控制台窗口中的每一个):

使用。您可以在
Procfile

web:    rails server
worker: bundle exec sidekiq
并使用
工头启动
运行它们

进一步阅读:


+1适用于12因素应用程序,谢谢!
web:    rails server
worker: bundle exec sidekiq