«Правильный» способ записи вывода журнала из фонового (Resque) задания? - PullRequest
4 голосов
/ 18 июня 2011

Resque-задания - это просто старые рубиновые объекты.Я могу использовать puts вызовы внутри них, чтобы выводить данные на консоль, или я могу создать экземпляр стандартного класса Ruby Logger с STDOUT и использовать его.

Но есть ли правильный подход для входа в систему?Rails, из мест, которые не являются контроллерами или моделями?Я вижу, Rails.logger возвращает BufferedLogger, но когда я звоню info или warn и т. Д., Ничего не происходит.Если я вызываю flush для него, он просто возвращает пустой массив и ничего не выводится.

Какое здесь соглашение?

1 Ответ

0 голосов
/ 25 июня 2011

Я не совсем уверен, что существует соглашение.До недавнего времени у меня была довольно уродливая система регистрации.Теперь я использую lumber для интеграции log4r с Rails.Это действительно сделало регистрацию намного приятнее, потому что теперь я назвал регистраторы (например, регистратор соответствует имени класса - отлично подходит для фильтрации вывода), и я могу контролировать уровни журналов для каждого регистратора (то есть для класса).

Существует также GELF-адаптер для log4r, если вы хотите использовать graylog2 для агрегирования журналов.

...