简体   繁体   English

查找正则表达式以从 tomcat 日志中提取时间戳

[英]Find Regex to extract timestamp from tomcat logs

I'm using fluentbit to parse and send logs to new relic.我正在使用 fluentbit 解析并将日志发送到新的遗物。 It is working fine with the logs of my app, but not with the logs of tomcat, like catalina.out它适用于我的应用程序的日志,但不适用于 tomcat 的日志,例如 catalina.out

The regex that I'm using is: /(?Dec \d+ \d+:\d+:\d+)(?.*)/我正在使用的正则表达式是: /(?Dec \d+ \d+:\d+:\d+)(?.*)/

And the log entries are:日志条目是:

05-Aug-2022 09:01:04.533 SEVERE [http-nio-8080-exec-17] com.sun.faces.application.view.FaceletViewHandlingStrategy.handleRenderException Error Rendering View[/pages/inicio.xhtml]
    java.lang.IllegalStateException: WELD-000343: Unable to load the current conversation from the associated request - org.jboss.weld.context.ConversationContext.currentConversation: null, request: org.apache.catalina.connector.RequestFacade@1b943ff4
            at org.jboss.weld.contexts.AbstractConversationContext.getCurrentConversation(AbstractConversationContext.java:512)
            at org.jboss.weld.module.jsf.ConversationAwareViewHandler.getActionURL(ConversationAwareViewHandler.java:114)
            at javax.faces.application.ViewHandlerWrapper.getActionURL(ViewHandlerWrapper.java:234)
            at com.sun.faces.renderkit.html_basic.FormRenderer.getActionStr(FormRenderer.java:237)
            at com.sun.faces.renderkit.html_basic.FormRenderer.encodeBegin(FormRenderer.java:136)
            at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:892)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1903)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1908)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1908)
            at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:491)
            at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:194)
            at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:151)
            at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:151)
            at org.omnifaces.viewhandler.OmniViewHandler.renderView(OmniViewHandler.java:155)
            at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:126)
            at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
            at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:223)
            at javax.faces.webapp.FacesServlet.service(FacesServlet.java:671)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
            at ar.com.dux.jsf.filters.CacheFilter.doFilter(CacheFilter.java:27)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
            at ar.com.dux.jsf.filters.SecurityFilter.conresultado(SecurityFilter.java:98)
            at ar.com.dux.jsf.filters.SecurityFilter.doFilter(SecurityFilter.java:83)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
            at org.primefaces.webapp.filter.FileUploadFilter.doFilter(FileUploadFilter.java:89)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
            at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
            at org.omnifaces.filter.GzipResponseFilter.doFilter(GzipResponseFilter.java:183)
            at org.omnifaces.filter.HttpFilter.doFilter(HttpFilter.java:108)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:196)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
            at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
            at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:698)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:364)
            at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:624)
            at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
            at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:831)
            at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1650)
            at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
            at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
            at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
            at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
            at java.lang.Thread.run(Thread.java:748)
05-Aug-2022 09:03:10.705 SEVERE [http-nio-8080-exec-16] com.sun.faces.application.view.FaceletViewHandlingStrategy.handleRenderException Error Rendering View[/pages/inicio.xhtml]
    java.lang.IllegalStateException: WELD-000343: Unable to load the current conversation from the associated request - org.jboss.weld.context.ConversationContext.currentConversation: null, request: org.apache.catalina.connector.RequestFacade@7f4b737c
            at org.jboss.weld.contexts.AbstractConversationContext.getCurrentConversation(AbstractConversationContext.java:512)
            at org.jboss.weld.module.jsf.ConversationAwareViewHandler.getActionURL(ConversationAwareViewHandler.java:114)
            at javax.faces.application.ViewHandlerWrapper.getActionURL(ViewHandlerWrapper.java:234)
            at com.sun.faces.renderkit.html_basic.FormRenderer.getActionStr(FormRenderer.java:237)
            at com.sun.faces.renderkit.html_basic.FormRenderer.encodeBegin(FormRenderer.java:136)
            at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:892)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1903)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1908)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1908)
            at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:491)
            at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:194)
            at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:151)
            at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:151)
            at org.omnifaces.viewhandler.OmniViewHandler.renderView(OmniViewHandler.java:155)
            at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:126)
            at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
            at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:223)
            at javax.faces.webapp.FacesServlet.service(FacesServlet.java:671)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
            at ar.com.dux.jsf.filters.CacheFilter.doFilter(CacheFilter.java:27)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
            at ar.com.dux.jsf.filters.SecurityFilter.conresultado(SecurityFilter.java:98)
            at ar.com.dux.jsf.filters.SecurityFilter.doFilter(SecurityFilter.java:83)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
            at org.primefaces.webapp.filter.FileUploadFilter.doFilter(FileUploadFilter.java:89)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
            at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
            at org.omnifaces.filter.GzipResponseFilter.doFilter(GzipResponseFilter.java:183)
            at org.omnifaces.filter.HttpFilter.doFilter(HttpFilter.java:108)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:196)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
            at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
            at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:698)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:364)
            at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:624)
            at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
            at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:831)
            at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1650)
            at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
            at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
            at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
            at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
            at java.lang.Thread.run(Thread.java:748)

This should work这应该工作
^([012][0-9])-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-\d\d\d\d [012]\d:[0-6]\d:[0-6]\d\.\d\d\d

Explanation:解释:

^                   start of a line
([0123][0-9])       00 to 39 (for simplicity, instead of 00 to 31)
-                   a hyphen
(Jan|Feb|Mar...)    the month
-                   another hyphen
\d\d\d\d            0000 to 9999
[012]\d             00 to 29 (for simplicity, instead of 00 to 24)
:                   a colon
[0-6]\d             00 to 69 (for simplicity, instead of 00 to 60)
:                   another colon
[0-6]\d             00 to 69 (for simplicity, instead of 00 to 60)
\.                  a dot
\d\d\d              three digits

You can check it out and play around with it here https://regex101.com/r/2cG0QG/1您可以在这里查看并使用它https://regex101.com/r/2cG0QG/1

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM