Rails 콘솔에서 명령을 실행할 때 SQL 쿼리 로깅으로 인해 출력이 복잡해져 읽고 읽기가 어려워질 수 있습니다. 디버그. 다행히 이 로깅을 비활성화하는 간단한 방법이 있습니다.
콘솔에서 SQL 쿼리 로깅을 억제하려면 ActiveRecord::Base.logger 개체에 새 값을 할당할 수 있습니다. 수행 방법은 다음과 같습니다.
로깅 비활성화:
old_logger = ActiveRecord::Base.logger ActiveRecord::Base.logger = nil
old_logger 변수는 나중에 사용할 수 있도록 원본 로거를 저장합니다. ActiveRecord::Base.logger를 nil로 설정하면 모든 SQL 쿼리 로깅을 효과적으로 비활성화할 수 있습니다.
로깅 다시 활성화:
디버깅 세션을 완료한 후, 원래 로거를 ActiveRecord::Base.logger:
ActiveRecord::Base.logger = old_logger
에 다시 할당하여 SQL 쿼리 로깅을 복원할 수 있습니다. SQL 쿼리 로깅을 다시 활성화하여 향후 참조 또는 진단을 위해 쿼리에 대한 자세한 기록을 제공합니다.
로그 수준 조정:
보다 미묘한 접근 방식으로 또한 ActiveRecord::Base.logger의 로그 수준을 조정하여 다양한 수준의 로깅 정보를 선택적으로 억제하거나 활성화할 수도 있습니다. 예를 들어 로그 수준을 1(또는 Logger::INFO)로 설정하면 우선 순위가 INFO 이상인 SQL 쿼리만 기록됩니다.
ActiveRecord::Base.logger.level = 1 # or Logger::INFO
작업을 완료한 후에는 로그 수준을 원래 값으로 다시 설정해야 합니다. 애플리케이션 로깅의 다른 측면에 영향을 주지 않도록 세션을 디버깅하세요.
위 내용은 보다 쉬운 디버깅을 위해 Rails 콘솔에서 SQL 로깅을 일시적으로 비활성화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!