2014-03-24 6 views
1

log4j에서 패턴에 두 개 이상의 공백 (예 :)을 표시하려면 어떻게해야합니까? 나는 %d{ISO8601}\t%t\t%m %n과 같은 패턴을 가지고 있지만, chainsaw와 LogMX를 통해 구문 분석 할 때 탭 분리는 신뢰할 수 없습니다. 탭으로 구분하지 않고 여러 공백으로 구분하여 대체를 검색하고 있지만 찾을 수 없습니다.Log4j 패턴, 공백 표현 방법

도움을 주시면 감사하겠습니다. 고맙습니다.

답변

2

log4j의 레이아웃 패턴은 정규식 패턴이 아니며 문자열을 검색하는 데 사용되지 않습니다. 그것의 이름이 idifiers이기 때문에, log4j에 의해 priinted되기 위하여 메시지를 놓기를 위해 사용된다. \ s + 같은 것을 사용하면 인쇄 할 공간의 수를 어떻게 알 수 있습니까? 따라서 메시지 레이아웃에 여러 공백이 필요한 경우 패턴에 공백을 명시 적으로 입력해야합니다.

0

방금 ​​Log4j 패턴을 시도했으며 새로 생성 된 로그 파일이이 패턴의 Log4jPattern 파서를 사용하여 LogMX에 의해 올바르게 구문 분석되었습니다. "구문 분석 할 때 탭 분리가 안정적이지 않습니다"라고 설명 할 수 있습니까? "?

%m%n 사이의 여분의 공백 문자는 매우 이상합니다. 모든 로그 메시지는 올바르게 구문 분석 될 공백 문자로 끝나야합니다.

PS : 나는 @FrVaBe에 동의하고 @Lolo는 전기 톱의 log4j의 사용

0

응답 'LogFilePatternReceiver'로그 파일을 처리 할 수 ​​있습니다.

LogFilePatternReceiver 여러 공간을 병합하는 코드를 가지고 있지만, 그 코드는 [] + 대신 \의 사용 +

내가 \ S +를 사용하도록 변경으로 살펴 보겠습니다.