2013-04-17 5 views
1

저는 Catalyst2 및 ModPerl을 사용하여 Catalyst 웹 응용 프로그램을 호스팅합니다. 웹 응용 프로그램은 Log4perl 모듈을 사용하여 로그 파일을 생성합니다.Catalyst : Log4perl 및 Apache

문제는 아파치 서비스가 시작될 때 로그 항목 만 생성된다는 것입니다. 이후에 새로운 항목이 생성되지 않았습니다.

대신 촉매 통합 개발 서버를 사용하면 로그 항목이 정상적으로 생성됩니다.

이미 액세스 권한을 확인했는데 이것들은 정상적으로 보입니다. 아파치 프로세스가 소유자이고 쓸 수 있습니다.

누구나이 문제의 원인은 무엇입니까 ???

이 내 log4perl의 설정입니다 :

log4perl.logger.myapp = INFO, LOGFILE

log4perl.appender.LOGFILE = 로그 :: Log4perl :이 appender ::

log4perl 파일 .appender.LOGFILE.filename = myapp.log

log4perl.appender.LOGFILE.mode는 =

log4perl를 추가 .appender.LOGFILE.layout = PatternLayout을

log4perl.appender.LOGFILE.layout.ConversionPattern = [%의 D] [%의 P] m %의 %의 N

답변

0

I 설치 아파치와 mod_perl을 실행하는 테스트 애플리케이션 나는이 일을해야 해. 여기에 대해 나는 그것에 대해 가지고 메모했다.

나는 Log :: Log4perl :: Catalyst를 사용하여 Catalyst 내에서 로깅을 수행했습니다. Log4perl을 사용하여 언급했지만, Catalyst 확장을 사용하고 있는지 여부는 알지 못했습니다. 내 주요 패키지에는 다음 줄이 있습니다.

use Log::Log4perl::Catalyst; 
... 
__PACKAGE__->log(Log::Log4perl::Catalyst->new('/full/path/to/l4p.conf')); 

로그 구성 파일의 전체 경로를 지정해야했습니다. 나는 그것이 작동하는지 확인하기 위해 몇 가지 로깅 구문을 추가했다.

위 샘플을 사용했지만 한 가지를 변경했습니다. 로그 위치에 대한 전체 경로를 다시 지정해야했습니다.

log4perl.appender.LOGFILE.filename=/full/path/to/myapp.log 

이러한 작업을 수행하면 로그 파일이 업데이트됩니다.