rails debugger ruby-on-rails ruby byebug

ruby-on-rails - debugger rails



Rails Byebug no detuvo la aplicación (2)

Quiero usar byebug para depurar mi aplicación, pero la aplicación nunca se detiene aunque ya coloque byebug dentro de mi código. Aquí está mi Gemfile.

group :development, :test do # Call ''byebug'' anywhere in the code to stop execution and get a debugger console gem ''byebug'', ''~> 5.0.0'' # Access an IRB console on exception pages or by using <%= console %> in views gem ''web-console'', ''~> 2.0'' end

Puse byebug en uno de mis controladores.

def edit byebug present Ingredient::Update end

Ya hice todos mis pedidos locales en mi development.rb . Ya reinicio el servidor un par de veces.

config.consider_all_requests_local = true

Aquí está el ejemplo del seguimiento de la pila en el que byebug solo imprime el primer rastreo y luego la aplicación continúa ejecutando la siguiente línea.

web_1 | [43, 52] in /recipe/app/controllers/ingredients_controller.rb web_1 | 43: def update web_1 | 44: run Ingredient::Update do |op| web_1 | 45: return redirect_to op.model web_1 | 46: end web_1 | 47: byebug web_1 | => 48: render action: :edit web_1 | 49: end web_1 | 50: web_1 | 51: # DELETE /ingredients/1 web_1 | 52: # DELETE /ingredients/1.json web_1 | (byebug) Rendered ingredients/edit.haml within layouts/application (264.1ms) web_1 | Rendered layouts/_navigation.haml (45.0ms) web_1 | Completed 200 OK in 2827ms (Views: 2764.0ms | ActiveRecord: 3.9ms) web_1 | web_1 | web_1 | Started GET "/assets/application.self-1ca8529ef221ef9dba25e835f258c4e62f2f49bce400273a67e63d7d73be28ba.css?body=1" for 192.168.59.3 at 2015-07-28 06:46:00 +0000

¿Alguna idea? Actualizar Utilizo docker-compose y docker dentro de mi aplicación Rails.


Cuando utilice docker-compose en combinación con byebug , debe agregarse para que funcione correctamente. Encontrado en esta entrada de blog

Agrega esto a docker-compose.yml

web: ... stdin_open: true tty: true

A continuación, ejecute docker-compose en modo deamonizado y adjúntelo al contenedor web con docker:

docker-compose up -d docker attach myappname_web_1


Para habilitar el modo depurador:

docker-compose run --service-ports web

Ver esta entrada de blog