2011-05-16 2 views
36

로거를 레일과 함께 사용하는 방법을 알아 내려고합니다. 3. 콘솔에없는 파일에 로그인해야하지만 어떻게해야 하는지를 알 수 없습니다 그것을 설정 한 다음 그 로그에 무언가를 쓰는 방법. 난 레일 문서를 시도했지만 그들은 그것을 분명히하지 않았다.레일에 로거 설정하기 3

답변

80

기본적으로 레일스는 프로젝트의 log 디렉토리에있는 환경 별 로그 파일에 로깅해야합니다. 당신이 실행중인 환경에 따라 development.log, 또는 production.log라는 하나 test.log됩니다

당신은 Rails.logger 객체를 사용하여 레일 '로거에 직접 로그인 할 수 있습니다.

Rails.logger.info "My info message" 
Rails.logger.debug "My debugging message" 
Rails.logger.warn "My warning message" 

Ruby's standard logging class을 사용하는 데 사용되는 레일 하지만 이제는 ActiveSupport::BufferedLogger을 사용합니다. (공식 Ruby on Rails Guides은 "Rails가 Ruby의 표준 로거를 사용하여 로그 정보를 작성합니다"라고 말하면 올바르지 않습니다.)

+3

수십억 번 감사드립니다. 오늘 나를 진심으로 구했습니다. –

+0

ActiveSupport :: BufferedLogger를 사용하고 있다고 생각합니다 ... Rails.logger.class를 확인하십시오. – Duke

+0

@Duke 정말로 틀림 없습니다. 레일스 공식 가이드가 틀린 것 같습니다. –

관련 문제