다양한 유형의 로그 (사용자, 응용 프로그램 등 ...)가있는 응용 프로그램 로그를위한 솔루션을 만들고 각 유형의 로그를 별도의 파일에 저장하려고했습니다.log4j를 사용하는 다중 로그 파일
이것은 log4j 또는 다른 API에서 가능합니까? 어떻게 할 수 있습니까?
재미 있다고 생각하면 질문을 편집하고 코드를 넣지 만 가치가 있다고 생각하지는 않지만 여전히 매우 기본입니다.
미리 감사드립니다.
다양한 유형의 로그 (사용자, 응용 프로그램 등 ...)가있는 응용 프로그램 로그를위한 솔루션을 만들고 각 유형의 로그를 별도의 파일에 저장하려고했습니다.log4j를 사용하는 다중 로그 파일
이것은 log4j 또는 다른 API에서 가능합니까? 어떻게 할 수 있습니까?
재미 있다고 생각하면 질문을 편집하고 코드를 넣지 만 가치가 있다고 생각하지는 않지만 여전히 매우 기본입니다.
미리 감사드립니다.
, 인터넷에서 다른 FileAppenders에게 예를 사용 : 로그인 당신이 Logger.getLogger("com.vaannila.admin").log("To admin log")
을 admin.log에 로그인 할 수 있습니다
log4j.rootLogger=DEBUG
# AdminFileAppender - used to log messages in the admin.log file.
log4j.appender.AdminFileAppender=org.apache.log4j.FileAppender
log4j.appender.AdminFileAppender.File=admin.log
log4j.appender.AdminFileAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.AdminFileAppender.layout.ConversionPattern= %-4r [%t] %-5p %c %x - %m%n
# ReportFileAppender - used to log messages in the report.log file.
log4j.appender.ReportFileAppender=org.apache.log4j.FileAppender
log4j.appender.ReportFileAppender.File=report.log
log4j.appender.ReportFileAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.ReportFileAppender.layout.ConversionPattern= %-4r [%t] %-5p %c %x - %m%n
log4j.logger.com.vaannila.admin=WARN,AdminFileAppender
log4j.logger.com.vaannila.report=DEBUG,ReportFileAppender
및보고 Logger.getLogger("com.vaannila.report").log("To report log")
"Logger.getLogger ("com.vaannila.admin ") .log ("관리 로그로 ")"부분을 이해하지 못합니다. log4j는 AdminFileAppender를 기록하려고합니다. 나는 여기 비슷한 것을 시도하지만 작동하지 않는다 ... – caarlos0
log4j.logger.com.vaannila.admin' = WARN, AdminFileAppender이 속성은'com.vaannila.admin' 또는 'com.vaannila.admin.xxx.yyy.zzz' 그러면 AdminFileAppender (FileAppender와 'admin.log'파일)를 사용하십시오. – korifey
음, 이제 작동합니다. 고마워요, 코피, 신의 축복이 있습니다. – caarlos0
Log4j는 로거 및 애펜더를 제공합니다. 이 작업을 수행하는 방법은 원하는 각 파일에 대한 Appender를 갖는 것입니다. 그들은 적합한 Appender (들)을 가리키는 적절한 로거 세트를 설정합니다. 로거는 일반적으로 패키지 이름을 사용하여 설정됩니다. 이것이 당신을 위해 작동한다면, x 패키지의 코드는 y 파일로 간다. 그렇지 않으면 출력 파일 당 로거를 작성하고 코드에서 해당 로거를 선택하게하십시오. 로거 (Logger)를 사용하여 정보를 여러 애펜더에게 보낼 수도 있으므로 적절하게 설정할 수 있습니다.
설정 방법에 대한 예는 korifey의 게시물을 참조하십시오. cource의
로깅 다양한 종류의 무엇을 의미합니까? 로그 레벨 (DEBUG, INFO, WARN ...) 또는 로그 코드가 발생하는 다른 클래스 또는 코드를 통해 실행되는 사용자에 따라 다른 로그 파일을 원 하시겠습니까? 아니면 스레드에 따라 다르게할까요? 이름? –
[duplicate-multiple-content-with-log4j]의 가능한 복제본 (http://stackoverflow.com/questions/728295/creating-multiple-log-files-of-different-content- with-log4j) –
@olly_uk 나는 그것이 중복이 아니라고 생각한다. – caarlos0