Як можна приховати вихід бази даних в консолі Rails?


103

У новій версії Rails, я думаю, починаючи з 3-х версій, запити бази даних виводяться на консоль. Це корисно більшу частину часу, але як це можна приховати, коли його не хочеться бачити?

Відповіді:


177

Кращий спосіб зробити це, ввівши це в консоль:

ActiveRecord::Base.logger.level = 1 

оскільки це запобігає проблемам, що намагаються використовувати вказівник на реєстратор, встановлений на нульове значення (джерело: Вимкнути реєстрацію SQL-журналу Rails у консолі )

Щоб увімкнути його знову

ActiveRecord::Base.logger.level = 0

31
Дякую. І включити його назад, ActiveRecord::Base.logger.level = 0.
thebenedict

Будь-яка ідея, як це зробити з Mongoid?
Джессі Фермер


9

Коротка відповідь ... У файлі development.rb змінити або додати значення config.log_levelтак, щоб мати такий рядок

config.log_level = :info

1
Ні, це, мабуть, не впливає на те, що відбувається в консолі. Також я вважаю за краще рішення, яке не вимагає від мене змін файлів проекту.
Роджер Ертесваг

Гаразд, рішення працює для мене з webrick, але ви, можливо, використовуєте інший сервер або працюєте в режимах виробництва або тестування?
madth3

3
Він працює для зміни вмісту файлів журналів. Але питання стосується рейки консолі, а не файлів журналів.
Роджер Ертесваг

6

Від мого друга:

your_query; nil

1
Щоб покращити якість вашої публікації, будь ласка, вкажіть, як / чому ваша публікація вирішить проблему.
Мік Маккаллум

7
Це зупинить вашу консоль рубіну від скидання результатів виразів на консоль, але це не зупинить ActiveRecord від скидання даних sql до реєстратора рейок.
eremzeit

1
Попереднім коментаторам: це відповідає на запитання, і це єдина відповідь, яка працювала для мене, що ще можна було б побажати?
valk

3
Я не думаю, що це взагалі відповідає на питання. як сказав @eremzeit, це не зупинить усі запити sql, перекинуті на вашу консоль, це лише зупинить повернення значення з цієї команди на друк ...
opsidao

1
Він не відповідає на питання, але корисний для повторення результатів
Rutger


-2

Я бачу, що ви вже отримали потрібну відповідь, хоча я б хотів порадити дорогоцінний камінь "тихих активів", більшість даних журналу буде складанням активів та включеннями; цей самоцвіт видалить це та все ще виведе запити та поведінку даних.

Весело


1
Питання про вихід до консолі, а не файлів журналів
Roger Ertesvag
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.