Вход на рельсы консоль с граблями

У меня есть файл rake, который вызывается планировщиком заданий. Файл выводит desc, но я не могу записать что-либо еще на консоль. Что мне не хватает?

inbox.rake

namespace :inbox do
  desc 'Check inbox for new app builds'
  task process_inbox: :environment do
    puts "my task is working"  
  end
end

4 ответа

Решение

puts отправляет текст STDOUT, который отличается, когда вы бежите rake из терминала по сравнению с вызовом из другого процесса ruby.

Где вы ожидаете увидеть этот текст?

Как и в журналах Heroku, вам нужен STDOUT, чтобы увидеть результаты. Может быть так просто, как

my_logger = Logger.new(STDOUT)
my_logger.info "work or die"

Вы не используете --quiet / --silent?

Попробуйте вручную печатать на консоль.

namespace :inbox do
  desc 'Check inbox for new app builds'
  task process_inbox: :environment do
    Rails.logger.info "my task is working"  
  end
end
Другие вопросы по тегам