Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Melumpuhkan Sementara dan Mendayakan Semula Pengelogan Pertanyaan SQL dalam Konsol Rails?

Bagaimana untuk Melumpuhkan Sementara dan Mendayakan Semula Pengelogan Pertanyaan SQL dalam Konsol Rails?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-29 13:17:11713semak imbas

How to Temporarily Disable and Re-enable SQL Query Logging in the Rails Console?

Menggantung Log Query SQL Buat sementara waktu dalam Rails Console

Apabila menyahpepijat dalam konsol Rails, pengelogan pertanyaan SQL yang berlebihan boleh mengacaukan output, menjadikannya sukar dibaca. Nasib baik, terdapat kaedah untuk melumpuhkan sementara dan mendayakan semula pengelogan.

Untuk mematikan pengelogan pertanyaan SQL:

old_logger = ActiveRecord::Base.logger
ActiveRecord::Base.logger = nil

Ini memberikan pengelog semasa kepada pembolehubah sementara, kemudian menetapkan pengelog kepada tiada, menyenyapkan semua pertanyaan SQL dengan berkesan.

Untuk mendayakan semula pengelogan:

ActiveRecord::Base.logger = old_logger

Ini memulihkan pembalak kepada nilai sebelumnya, meneruskan pengelogan pertanyaan SQL.

Jika menetapkan pembalak kepada nil menyebabkan ralat, anda boleh menetapkan tahapnya kepada 1 (Logger ::INFO):

ActiveRecord::Base.logger.level = 1 # or Logger::INFO

Ini secara berkesan menapis semua pertanyaan SQL daripada output, sambil masih membenarkan amaran dan ralat mesej untuk dilog.

Atas ialah kandungan terperinci Bagaimana untuk Melumpuhkan Sementara dan Mendayakan Semula Pengelogan Pertanyaan SQL dalam Konsol Rails?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn