3

渲染需要一个 /health 端点,但是当我在我的应用程序中创建它并第一次部署时,我无法部署,因为如果没有先运行迁移,应用程序就无法启动。

即使在迁移运行之前,Render.com 健康检查似乎也需要健康端点做出响应。我怎样才能做到这一点?

4

3 回答 3

7

您可以直接将其写入路由文件

get '/health_check', to: proc { [200, {}, ['success']] }

它会为你工作

于 2021-01-19T16:02:03.873 回答
0

创建文件lib/health_check.rb

HealthCheck = Rack::Builder.new do
  use Rack::CommonLogger
  map '/' do
    run lambda { |env| [200, {'Content-Type' => 'text/plain'}, ['OK']] }
  end
end

创建文件config/initializers/health_check.rb

require './lib/health_check.rb'

然后,在你的routes.rb文件中,

  mount HealthCheck, at: "/health"
于 2021-01-19T15:09:19.590 回答
0

您可以简单地使用 rails-healthcheck ( https://github.com/linqueta/rails-healthcheck ) gem:

安装 gem 并运行生成器rails g healthcheck:install并调用 /healthcheck ,

于 2021-09-25T00:04:13.963 回答