2014-01-23 3 views
0

뮬 ESB는 log4j2를 지원합니까? 내 esb 응용 프로그램에서 log4j2.xml을 추가하려고하지만 log4j2.xml을 추가 한 후에도 내 mule esb 응용 프로그램이 자체 log4j 1.2 구현을 기본값으로 설정하고 있습니다. 내 esb 애플 리케이션 내 log4j2.xml 파일을 읽고 내 log4j2.xml에서 지정하고 Log4j2.xml 파일이 존재하는 경우 다음 자체 log4j 1.2 구현 로그 속성 파일을 읽지 않아야 매개 변수를 사용/소비 싶어요.뮬 ESB Log4j2 지원

mule esb app를 사용하여 log4j2 (.xml)을 구현하는 데 문제가 있습니다. 어떤 도움이라도 대단히 감사 할 것입니다.

+0

나를 시작하기 좋을 것 노새 ESB와 협력하고있는 샘플 log4j2.xml. 감사. – Jai

+0

MuleSoft 직원이 우수한 블로그를 방문하십시오. http://blogs.mulesoft.org/mule-3-6-asynchronous-logging/ –

답변

0

뮬 esb의 최신 버전은 log4j2를 지원합니다. 버전이 제대로 작동하지 않을 수있는 이유가 될 수 있기를 바랍니다.

0

Log4j2 어댑터는 log4j-1.2 API를 사용하여 log4j2 구현을 사용하도록 코딩 된 응용 프로그램을 허용합니다. (또한 FAQ 참조).

단계이 달성 :

  • 를 클래스 경로에서의 log4j-1.2.x.jar 제거
  • 은 상기의 log4j-1.2 API-2.0.jar 단지 추가 classpath.
  • 그 log4j에-API-2.0.jar와 log4j에 코어-2.0.jar을 위해 클래스 패스 지금

의 log4j-1.2 API와 log4j2 API를 모두 log4j2 구현에 위임됩니다에 있습니다. 구성 예는 here입니다.

+0

감사합니다. 이것을 시도 할 것입니다. :) – Jai

+0

문제가 해결 되었습니까? –

+0

아닙니다. classpath에서 log4j-1.2.x.jar를 제거하더라도 Mule은 log4j-1.2 만로드하면 log4j2.xml은 읽히지 않습니다. Mule은 여전히 ​​log4j.properties 만 읽습니다. slf4j 로그 명령문은 log4j2.xml에 정의 된대로 리디렉션되지 않으며 mule의 slf4j 로그 명령문은 log4j.properties 파일에 정의 된 대로만 수행됩니다. – Jai

0

Log4j2는 Mule-3.6.0 이상에서 암시 적으로 지원됩니다. 더 많은 정보를 원하시면이 링크를 클릭하십시오 Asynchronous Logging in Mule

0

뮬 esb는 log4j를 지원합니다. slf4j 라이브러리를 가져 왔는지 확인하십시오.

당신은/생성이이 노새 7.1를 사용하여 내 log4j2.xml 내의 pom.xml 파일, 미안하다 log4j2-test.xml의

0

의 이름을 변경해야합니다. 도움이되기를 바랍니다.

log4j2.xml

<?xml version="1.0" encoding="UTF-8"?> 
<Configuration status="debug"> 
    <Properties> 
     <Property name="log-path">/my_path/my_logs/my_app</Property> 
     <Property name="app-id">my_app</Property> 
    </Properties> 

    <Appenders> 
     <RollingFile name="file-log" fileName="${log-path}/${app-id}.log" 
      filePattern="${log-path}/${app-id}-%d{yyyy-MM-dd}.log"> 
      <PatternLayout> 
       <pattern>[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n 
       </pattern> 
      </PatternLayout> 
      <Policies> 
       <TimeBasedTriggeringPolicy interval="1" 
        modulate="true" /> 
      </Policies> 
     </RollingFile> 

     <Console name="console" target="SYSTEM_OUT"> 
      <PatternLayout 
       pattern="[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n" /> 
     </Console> 
    </Appenders> 
    <Loggers> 

     <Logger name="org.apache.logging.log4j" level="warn" additivity="false"> 
      <appender-ref ref="file-log" /> 
      <appender-ref ref="console" /> 
     </Logger> 

     <Root level="info" additivity="false"> 
      <appender-ref ref="file-log" /> 
      <appender-ref ref="console" /> 
     </Root>`enter code here` 
    </Loggers> 

</Configuration> 

의 pom.xml

<dependency> 
    <groupId>org.apache.logging.log4j</groupId> 
    <artifactId>log4j-api</artifactId> 
    <version>2.0</version> 
    </dependency> 
    <dependency> 
    <groupId>org.apache.logging.log4j</groupId> 
    <artifactId>log4j-core</artifactId> 
    <version>2.0</version> 
    </dependency> 
관련 문제