I need to run thin start
or thin -ssl ... start
within the root of my rails app, and see the application logs output to the console, similar to what rails s
does
Thin server: ouput rails application logs to console, as 'rails s' does
Asked Answered
In config.ru
file, located at the root of your application, add the following code, just before the line run Rails.application
:
console = ActiveSupport::Logger.new($stdout)
console.formatter = Rails.logger.formatter
console.level = Rails.logger.level
Rails.logger.extend(ActiveSupport::Logger.broadcast(console))
But this is going to affect all environments, and most likely pollute the production machine logs. I am using thin in development because it's faster than Webbrick, is it possible to target only this environment ? –
Insensible
Simply wrap the above code in a
if Rails.env.development?
block –
Diathermy @Benj This is the most marvelous answer ever provided on SO. I never thought that was possible. Now I have the colorful debug output using
thin
, thank you vey much. –
Binal Make sure your config/environments/development.rb
file is configured to print logs, in case it is not, you can add these lines there and do not forget to restart the rails server.
logger = ActiveSupport::Logger.new(STDOUT)
logger.formatter = config.log_formatter
config.logger = ActiveSupport::TaggedLogging.new(logger)
© 2022 - 2024 — McMap. All rights reserved.