몇 개의 XML이있는 폴더가 여러 개인 폴더가 여러 개 있습니다.폴더 이름을 기반으로 log4j로 여러 로그 파일을 만들려면
루프의 시작 부분에서 for 루프의 XMls를 언 마샬링하는 동안 xml의 폴더를 기반으로 폴더 변수를 설정하는 중 언 마샬링 중입니다. 하지만 결국 varialbe 폴더의 가치를 변경할 수 없습니다.
의 Log4j 파일 :
log4j.rootLogger=DEBUG, theFileAppender
log4j.category.org.exolab.castor.xml=ERROR, theFileAppender
log4j.category.org.castor.core.util=ERROR, theFileAppender
log4j.appender.theFileAppender=org.apache.log4j.FileAppender
log4j.appender.theFileAppender.File = ${folder}/error.log
log4j.appender.theFileAppender.Append=false
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=1
log4j.appender.theFileAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.theFileAppender.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c %x - %m%n
내가 폴더를 설정하고 루프의 시작 : 루프의 끝에서
System.setProperty("folder", "E:/Logging/folderName");
을 : 내가하여 폴더를 설정하고있다 :
Properties properties = new Properties(System.getProperties());
properties.setProperty("folder","E:/Logging/folderName");
folderName은 내 폴더 이름입니다.
필요한 폴더를 만들지 만 루프 시작시 생성 된 폴더에 생성 된 오류 로그 파일에 추가됩니다.
변수 설정 방법을 알려주세요.
작동 중입니다. 감사. 하지만 왜이 경우 setProperty()가 작동하지 않습니까? – Naveen
@Naveen 왜'setProperty (..)'가 작동하지 않는 지 모르겠다.'log4j' API는 다음과 같이 될 수 있기 때문에 문제를 해결하기 위해 짧고 좋은 방법을 제공했다. 여러면에서 호출됩니다. 이것이 당신의 질문을 해결하는 대답이라고 생각한다면, 그것을 선택한 것으로 확인하는 것을 잊지 마십시오 :-) –