write rails not logger log empty debug ruby-on-rails logging production

not - Inicio de sesión en Ruby on Rails en modo de producción



ruby logger (2)

El nivel de registro normal en producción es info , por lo que no se muestran los registros de debug .
Cambia tu registro a

Rails.logger.info "Year: #{Time.now.year}"

para mostrarlo en production.log .

Alternativamente (pero no es una buena idea) puede elevar el nivel de registro en /config/environments/production.rb :

config.log_level = :debug

Actualizar Rails 4.2:

Ahora el nivel de depuración predeterminado en todos los entornos es :debug (como se menciona @nabilh).
Si quiere que su entorno de producción tenga menos charla, puede restablecer su nivel de registro en /config/environments/production.rb al primero :info :

config.log_level = :info

Me gustaría ver algunas variables en el controlador, intenté lo siguiente:

Rails.logger.debug "Year: #{Time.now.year}"

puts "Year: #{Time.now.year}, Month: #{@month}"

¿dónde puedo ver la salida de Logger o Puts en modo de producción? ¿Debo configurar algo para verlos en algún lado?


Si bien creo que @ martin-m tiene razón en que probablemente no quiera saturar sus registros mediante el uso de config.log_level = :debug en /config/environments/production.rb , creo que el nivel de registro predeterminado en todos los entornos es la debug como de Rails 4.2. Por lo tanto, los registros de debug (y todos los niveles) se mostrarán en producción a menos que especifique lo contrario.

Entonces, en respuesta a su pregunta, ahora puede escribir:

Rails.logger.debug "Year: #{Time.now.year}" y vea los resultados en /log/production.log .

Vea here para una documentación más detallada. Here está la documentación de Rails 4.1 para comparación.