2016-03-29 8 views
0

ich ein log4j2.xml haben, die wie folgt aussieht:Ausnahme angemeldet Log4j2 Protokolldatei ist in Unix-Format

<?xml version="1.0" encoding="UTF-8"?> 
<Configuration status="DEBUG"> 
    <Properties> 
     <Property name="log-path">E:/MLM/MyDomain/servers/MyAppSrv01/logs</Property> 
    </Properties> 
    <Appenders> 
     <RollingFile name="RollingFile" fileName="${log-path}/MLMServices.log" filePattern="${log-path}/MyServices-%d{yyyy-MM-dd}-%i.log" > 
      <PatternLayout> 
       <pattern>%d{dd/MMM/yyyy HH:mm:ss,SSS} [%t] [%-5level] - %c{1}: %m%n</pattern> 
      </PatternLayout> 
      <Policies> 
       <SizeBasedTriggeringPolicy size="1 MB" /> 
      </Policies> 
      <DefaultRolloverStrategy max="30"/> 
     </RollingFile> 
    </Appenders> 
    <Loggers> 
     <Logger name="root" level="debug" additivity="false"> 
      <appender-ref ref="RollingFile" level="debug"/> 
     </Logger> 
     <Root level="debug" additivity="false"> 
      <AppenderRef ref="RollingFile"/> 
     </Root> 
    </Loggers> 
</Configuration> 

Das für meine Anwendung verwendet wird, zum Einsatz auf WebLogic 12.2.1 auf Windows Server. Wenn ich versuche, eine Ausnahme-Stack-Trace wie folgt anmelden:

} catch (Exception exception) { 
    logger.catching(exception); 
} 

Oder wie folgt aus:

} catch (Exception exception) { 
    logger.fatal("", exception); 
} 

Die resultierende Zeile in der Protokolldatei, wenn ich den Editor verwenden, um zu sehen, wird wie folgt aussehen:

14/Mar/2016 14: 31: 21.344 [[ACTIVE] ExecuteThread: '11' für die Warteschlange: 'weblogic.kernel.Default (self-tuning)'] - TestWS: Abfangen weblogic.management.NoAccessRuntimeException: Der Zugriff auf sensible Attribute in Klartext ist aufgrund der Einstellung von ClearTex nicht erlaubt tCredentialAccessEnabled-Attribut in SecurityConfigurationMBean. Attr: CustomIdentityKeyStorePassPhrase, MBean-Name: com.bea: Name = MLMAppSrv01, Typ = Server bei weblogic.management.mbeanservers.internal.SecurityInterceptor.checkGetSecurity (SecurityInterceptor.java:590) ~ [com.oracle.weblogic.management.mbeanservers. jar: 12.2.1.0] bei weblogic.management.mbeanservers.internal.SecurityInterceptor.getAttribute (SecurityInterceptor.java:293) ~ [com.oracle.weblogic.management.mbeanservers.jar: 12.2.1.0] bei weblogic.management. jmx.mbeanserver.WLSMBeanServerInterceptorBase $ 17.run (WLSMBeanServerInterceptorBase.java:466) ~ [com.bea.core.management.jmx.jar: 12.2.1.0] bei java.security.AccessController.doPrivileged (Native Methode) ~ [?: 1.8.0_71] bei weblogic.management.jmx.mbeanserver.WLSMBeanServerInterceptorBase.getAttribute (WLSMBeanServerInterceptorBase.java:464) ~ [com.bea.core.management.jmx.jar: 12.2.1.0] bei weblogic.management.mbeanservers.internal.MBeanCICInterceptor.getAttribute (MBeanCICInterceptor.java:139) ~ [com.oracle.weblogic.management.mbeanservers.jar: 12.2.1.0] bei weblogic.management.jmx.mbeanserver.WLSMBeanServerInterceptorBase $ 17 .run (WLSMBeanServerInterceptorBase.java:466) ~ [com.bea.core.management.jmx.jar: 12.2.1.0] bei java.security.AccessController.doPrivileged (systemeigene Methode) ~ [?: 1.8.0_71] at weblogic.management.jmx.mbeanserver.WLSMBeanServerInterceptorBase.getAttribute (WLSMBeanServerInterceptorBase.java:464) ~ [com.bea.core.management.jmx.jar: 12.2.1.0] bei weblogic.management.mbeanservers.internal.PartitionJMXInterceptor.getAttribute (PartitionJMXInterceptor.java303) ~ [com.oracle.weblogic.management.mbeanservers.jar: 12.2.1.0] bei weblogic.management.jmx.mbeanserver.WLSMBeanServerInterce ptorBase $ 17.run (WLSMBeanServerInterceptorBase.java:466) ~ [com.bea.core.management.jmx.jar: 12.2.1.0] bei java.security.AccessController.doPrivileged (Native Methode) ~ [?: 1.8.0_71] bei weblogic.management.jmx.mbeanserver.WLSMBeanServerInterceptorBase.getAttribute (WLSMBeanServerInterceptorBase.java:464) ~ [com.bea.core.management.jmx.jar: 12.2.1.0] bei weblogic.management.mbeanservers.internal.CallerPartitionContextInterceptor. getAttribute (CallerPartitionContextInterceptor.java:177) ~ [com.oracle.weblogic.management.mbeanservers.jar: 12.2.1.0] bei weblogic.management.jmx.mbeanserver.WLSMBeanServer.getAttribute (WLSMBeanServer.java:283) ~ [com. bea.core.management.jmx.jar: 12.2.1.0] bei com.test.TestWS.webservicemethod4 (TestWS.java:132) [_wl_cls_gen.jar :?] bei sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Verfahren) ~ [: 1.8.0_71] bei sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) ~ [: 1.8.0_71] bei sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) ~ [?: 1.8.0_71] bei java.lang.reflect.Method.invoke (Methode.java:497) ~ [?: 1.8.0_71] bei org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory $ 1.invoke (ResourceMethodInvocationHandlerFactory.java:81) [org.glassfish.jersey.core.jersey-server.jar :?] bei org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher $ 1.run (AbstractJavaResourceMethodDispatcher .java: 144) [org.glassfish.jersey.core.jersey-server.jar :?] bei org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke (AbstractJavaResourceMethodDispatcher.java:161) [org.glassfish .jersey.core.jersey-server.jar :?] bei org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider $ ResponseOutInvoker.doDispatch (JavaResourceMethodDispatcherProvider.java:160) [org.glassfish.jersey.core.jersey- server.jar :?] bei org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch (AbstractJavaResourceMethodDispatcher.java:99) [org.glassfish.jersey.core.jersey-server.jar :?] bei org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke (ResourceMethodInvoker.java:389) [org.glassfish.jersey.core.jersey- server.jar :?] bei org.glassfish.jersey.server.model.ResourceMethodInvoker.apply (ResourceMethodInvoker.java:347) [org.glassfish.jersey.core.jersey-server.jar :?] bei org.glassfish .jersey.server.model.ResourceMethodInvoker.apply (ResourceMethodInvoker.java:102) [org.glassfish.jersey.core.jersey-server.jar :?] bei org.glassfish.jersey.server.ServerRuntime $ 2.run (ServerRuntime .java: 309) [org.glassfish.jersey.core.jersey-server.jar :?] bei org.glassfish.jersey.internal.Errors $ 1.call (Fehler.java:271) [org.glassfish.jersey. core.jersey-common.jar :?] bei org.glassfish.jersey.internal.Errors $ 1.call (Errors.java:267) [org.glassfish.jers ey.core.jersey-common.jar :?] bei org.glassfish.jersey.internal.Errors.process (Fehler.java:315) [org.glassfish.jersey.core.jersey-common.jar :?] at org.glassfish.jersey.internal.Errors.process (Fehler.java:297) [org.glassfish.jersey.core.jersey-common.jar :?] bei org.glassfish.jersey.internal.Errors.process (Fehler.java:267) [org.glassfish.jersey.core.jersey-common.jar :?] bei org.glassfish.jersey.process.internal.RequestScope.runInScope (RequestScope.java:317) [org.glassfish. jersey.core.jersey-common.jar :?] bei org.glassfish.jersey.server.ServerRuntime.process (ServerRuntime.java:292) [org.glassfish.jersey.core.jersey-server.jar :?] bei org.glassfish.jersey.server.ApplicationHandler.handle (ApplicationHandler.java:1154) [org.glassfish.jersey.core.jersey-server.jar :?] bei oder g.glassfish.jersey.servlet.WebComponent.service (WebComponent.java:460) [org.glassfish.jersey.containers.jersey-container-servlet-core.jar :?] bei org.glassfish.jersey.servlet.ServletContainer .service (ServletContainer.java:386) [org.glassfish.jersey.containers.jersey-container-servlet-core.jar :?] bei org.glassfish.jersey.servlet.ServletContainer.service (ServletContainer.java:334) [org.glassfish.jersey.containers.jersey-container-servlet-core.jar :?] bei org.glassfish.jersey.servlet.ServletContainer.service (ServletContainer.java:221) [org.glassfish.jersey.containers. jersey-container-servlet-core.jar :?] bei weblogic.servlet.internal.StubSecurityHelper $ ServletServiceAction.run (StubSecurityHelper.java:286) [com.oracle.weblogic.servlet.jar: 12.2.1.0] bei weblogic .servlet.internal.StubSecurityHelper $ ServletServiceAction.run (StubSecurityHe lper.java:260) [com.oracle.weblogic.servlet.jar: 12.2.1.0] bei weblogic.servlet.internal.StubSecurityHelper.invokeServlet (StubSecurityHelper.java:137) [com.oracle.weblogic.servlet.jar: 12.2.1.0] bei weblogic.servlet.internal.ServletStubImpl.execute (ServletStubImpl.java:350) [com.oracle.weblogic.servlet.jar: 12.2.1.0] bei weblogic.servlet.internal.ServletStubImpl.execute (ServletStubImpl .java: 247) [com.oracle.weblogic.servlet.jar: 12.2.1.0] bei weblogic.servlet.internal.WebAppServletContext $ ServletInvocationAction.wrapRun (WebAppServletContext.java:3650) [com.oracle.weblogic.servlet.jar : 12.2.1.0] bei weblogic.servlet.internal.WebAppServletContext $ ServletInvocationAction.run (WebAppServletContext.java:3620) [com.oracle.weblogic.servlet.jar: 12.2.1.0] bei weblogic.security.acl.internal. AuthentifiziertesSubjekt.doAs (AuthenticatedSubject.java:326) [com.oracle.weblogic.security.sub.jar: 12.2.1.0] bei weblogic.security.service.SecurityManager.runAsForUserCode (SecurityManager.java:196) [com.oracle.weblogic. security.sub.jar: 12.2.1.0] bei weblogic.servlet.provider.WlsSecurityProvider.runAsForUserCode (WlsSecurityProvider.java:203) [com.oracle.weblogic.servlet.jar: 12.2.1.0] bei weblogic.servlet.provider .WlsSubjectHandle.run (WlsSubjectHandle.java:71) [com.oracle.weblogic.servlet.jar: 12.2.1.0] bei weblogic.servlet.internal.WebAppServletContext.doSecuredExecute (WebAppServletContext.java:2423) [com.oracle.weblogic .servlet.jar: 12.2.1.0] bei weblogic.servlet.internal.WebAppServletContext.securedExecute (WebAppServletContext.java:2280) [com.oracle.weblogic.servlet.jar: 12.2.1.0] bei weblogic.servlet.internal. WebAp pServletContext.execute (WebAppServletContext.java:2258) [com.oracle.weblogic.servlet.jar: 12.2.1.0] bei weblogic.servlet.internal.ServletRequestImpl.runInternal (ServletRequestImpl.java:1626) [com.oracle.weblogic. servlet.jar: 12.2.1.0] bei weblogic.servlet.internal.ServletRequestImpl.run (ServletRequestImpl.java:1586) [com.oracle.weblogic.servlet.jar: 12.2.1.0] bei weblogic.servlet.provider.ContainerSupportProviderImpl $ WlsRequestExecutor.run (ContainerSupportProviderImpl.java:270) [com.oracle.weblogic.servlet.jar: 12.2.1.0] bei weblogic.invocation.ComponentInvocationContextManager._runAs (ComponentInvocationContextManager.java:348) [com.bea.core.utils .full.jar: 12.2.1.0] bei weblogic.invocation.ComponentInvocationContextManager.runAs (ComponentInvocationContextManager.java:333) [com.bea.core.utils.full.jar: 12.2.1.0] at weblogic.work.LivePartitionUtility.doRunWorkUnderContext (LivePartitionUtility.java:54) [com.oracle.weblogic.work.jar: 12.2.1.0] bei weblogic.work.PartitionUtility.runWorkUnderContext (PartitionUtility.java:41) [com. bea.core.weblogic.workmanager.jar: 12.2.1.0] bei weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext (SelfTuningWorkManagerImpl.java:617) [com.bea.core.weblogic.workmanager.jar: 12.2.1.0] bei weblogic .work.ExecuteThread.execute (ExecuteThread.java:397) [com.bea.core.weblogic.workmanager.jar: 12.2.1.0] bei weblogic.work.ExecuteThread.run (ExecuteThread.java:346) [com.bea .core.weblogic.workmanager.jar: 12.2.1.0] 14/Mar/2016 14: 31: 21,344 [[ACTIVE] ExecuteThread: '11' für die Warteschlange: 'weblogic.kernel.Default (self-tuning)'] - TestWS: webservicemethod4 1

Dies liegt daran, dass es im Unix-Format statt im Windows-Format ist (es fehlt das Wagenrücklaufzeichen).

Wie kann ich jede Zeile des Stack-Trace beenden mit Wagenrücklauf und Zeilenumbruch "\ r \ n", so dass ich es im Editor anzeigen kann? Wir haben nur Notepad auf dem Server, so dass es sehr schwierig sein kann, den Trace des Ausnahme-Stacks auf dem Server anzuzeigen.

Danke.

+0

Sie führen Code auf Windows-Server? – Shashank

Antwort

-1

Sie müssen ANSI-Escape-Sequenzen aktivieren:

ANSI Styling auf Windows

ANSI-Escape-Sequenzen nativ auf vielen Plattformen unterstützt werden, sind aber nicht standardmäßig auf Windows. Um die ANSI-Unterstützung zu aktivieren, fügen Sie einfach das Jansi MVN and Jar Download Glas zu Ihrer Anwendung hinzu und Log4j wird es automatisch nutzen, wenn Sie auf die Konsole schreiben.

+0

Hallo, ist der von Ihnen angegebene Link gültig? Ich bekomme immer 504 Timeout. Vielen Dank. – user3573403

+0

Es tut mir leid, es scheint, dass diese Seite nicht verfügbar ist, habe ich den Link aktualisiert – jonbondani

+0

Hallo jonbondani, ich heruntergeladen Jansi-1.11.jar, und steckte es in WEB-INF \ lib meiner WAR-Datei, wo der log4j2 jar Dateien sind. Aber wenn ich bereitgestellt und getestet habe, sind die Stack-Trace-Ausnahmen immer noch nicht im Windows-Format. Müssen wir Log4j2 nicht konfigurieren, um es über diese JAR-Datei zu informieren? – user3573403

Verwandte Themen