Class: Roqua::StatusChecks::StatusController
- Inherits:
-
ActionController::Base
- Object
- ActionController::Base
- Roqua::StatusChecks::StatusController
- Defined in:
- lib/roqua/status_checks/status_controller.rb
Overview
To use this status controller in a Rails application, add a route:
get ‘/status’ => ‘roqua/status_checks/status#balancer_status’
If you want to add more logic to the status controller, extend it:
get ‘/status’ => ‘status#balancer_status’
class StatusController < Roqua::StatusChecks::StatusController
skip_before_action :foo
skip_before_action :bar
end
Instance Method Summary collapse
Instance Method Details
#balancer_status ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/roqua/status_checks/status_controller.rb', line 16 def balancer_status balancer_member = balancer_member? db_connected = db_connected? http_code = balancer_member && db_connected ? 200 : 503 status = db_connected ? 'ok' : 'error' render json: {status: status, member: balancer_member}, status: http_code rescue CheckLoadBalancerMember::InvalidStatus render json: {status: "unknown status"}, status: 500 end |