当前位置: 首页 > 知识库问答 >
问题:

Spring靴执行器-“/关机”失败,错误为500

上官淮晨
2023-03-14

应用程序运行良好,管理端口运行良好。我可以浏览统计信息、检查运行状况等。我还启用了远程关闭endpoint,它正确地显示在endpoint的localhost:{mgmt_port}/actuator列表中。

我的问题

但是,当我转到localhost:{mgmt_port}/shutdown时,我看到:

<Map>
    <timestamp>1453905900007</timestamp>
    <status>500</status>
    <error>Internal Server Error</error>
    <exception>org.springframework.web.HttpRequestMethodNotSupportedException</exception>
    <message>Request method 'GET' not supported</message>
    <path>/shutdown</path>
</Map>

10:01:42.496[main]信息O.s.B.C.E.T.TomcatEmbeddedServletContainer-Tomcat在端口(s):8002(http)上启动10:01:42.499[main]信息com.xyz.api.main-在5.956秒内启动main(JVM运行时间为6.381)

发布后控制台输出

10:03:29.090[http-nio-8003-exec-1]信息O.A.C.C.C.[Tomcat-1].[localhost].[/]-初始化Spring FrameworkServlet“Dispatcher servlet”10:03:29.090[http-nio-8003-exec-1]信息O.s.web.servlet.dispatcherServlet“Dispatcher servlet”:初始化开始10:03:29.126[http-nio-8003-execlet.dispatcherServlet“Dispatcher servlet”:初始化在36毫秒内完成10:03:29.151 C.C.C.[.[.[.[.[dispatcherServlet]-servlet.Service()对于路径[]上下文中的servlet[dispatcherServlet]抛出异常[Request method'get‘不受支持],其根本原因是org.springframework.web.httprequestMethodNotSupportedException:org.springframework.web.servlet.mvc.method.requestMappingInfoHandlerMapping.handlenomatch(requestMappingInfoHandlerMapping.java:204)ping.lookupHandlerMethodMapping.java:382)~[spring-webmvc-4.2.4.release.jar!/:4.2.4.release]在.2.4.release.jar!/:4.2.4.release]在org.springframework.web.servlet.handler.abstractHandlerMapping.getHandler(abstractHandlerMapping.java:351)~[spring-webmvc-4.2.4.release.jar!/:4.2.4.release]在let.dispatcherservlet.getHandler(dispatcherservlet.java:1120)~[spring-webmvc-4.2.4.release.jar!/:4.2.4.发布]在org.springframework.web.servlet.dispatcherservlet.doDispatch(dispatcherservlet.java:932)~[spring-webmvc-4.2.4.release.jar!/:4.2.4.release]在org.springframework.web.servlet.dispatcherservlet.doService(dispatcherservlet.java:893)~[spring-webmvc-4.2.4.release.jar!/:4.2.4.release]在.frameworkservlet.doget(frameworkservlet.java:860)~[spring-webmvc-4.2.4.release.jar!/:4.2.4.release]在javax.servlet.http.httpservlet.service(httpservlet.java:622)~[tomcat-embed-core-8.0.30.jar!/:8.0.30]在org.springframework.web.servlet.frameworkservlet.service-8.0.30.jar!/:8.0.30]在org.apache.catalina.core.applicationFilterChain.InternaldoFilter(ApplIcationFilterChain.java:291)~[tomcat-embed-core-8.0.30.jar!/:8.0.30]在org.apache.catalina.core.applicationFilterChain.doFilter(applicationFilterChain.java:206)~[tomcat-embed-core-8.0.30.jar!/:8.0.30]在.java:106)[tomcat-embed-core-8.0.30.jar!/:8.0.30]在org.apache.catalina.authenticator.authenticator.authenticator.authenticatorbase.invoke(authenticatorbase:502)[tomcat-embed-core-8.0.30.jar!/:8.0.30]在org.apache.catalina.core.standardhostvalve.invoke(standardhostvalve.java:141)[tomcat-embed-core-8.0.30.jar!/:8.0.30]在30.jar!/:8.0.30]在org.apache.catalina.core.standardengineValve.invoke(StandardengineValve.java:88)[tomcat-embed-core-8.0.30.jar!/:8.0.30]在org.apache.catalina.connector.coyoteAdapter.服务(CoyoteAdapter.java:521)[tomcat-embed-core-8.0.30.jar!/:8.0.30]在org.apache.coyote.http11.abstractHttp11processor.process(abstractHttp11process.java:1096)[tomcat-embed-core-8.0.30.jar!/:8.0.30]在org.apache.coyote.abstractProtocol.abstractProtocol$abstractConnectionHandler.process(abstractProtocol.java:674)在endpoint.java:1500)[tomcat-embed-core-8.0.30.jar!/:8.0.30]在org.apache.tomcat.util.net.nioendpoint$socketprocessor.run(Nioendpoint.java:1456)[tomcat-embed-core-8.0.30.jar!/:8.0.30]在java.util.concurrent.threadpoolexecutor.runworker(未知源)[na:1.8.0_51]在java.util.concurrent.threadpoolexecutor$worker.run.run(taskthread.java:61)[tomcat-embed-core-8.0.30.jar!/:8.0.30]at java.lang.thread.run(来源未知)[na:1.8.0_51]

共有1个答案

翟光赫
2023-03-14

回答我自己的问题,以便将来帮助别人。我是个笨蛋.../actuatorURL列出了所有可用的命令,所有命令都基于get请求工作。

/shutdownURL实际上需要向其发送HTTP POST,以便激活它。我在文件上没有看到这一点。

CURL命令示例:

> curl -X POST http://hostname:8003/shutdown
<SingletonMap><message>Shutting down, bye...</message></SingletonMap>
 类似资料:
  • 背景资料 Spring Actuctor提供的管理URL在点击关闭后似乎仍然运行良好。 发布前控制台输出 10:01:42.496[main]INFO O.s.B.C.E.T.TomCatEmbeddedServletContainer-Tomcat在端口上启动:8002(http)10:01:42.499[main]INFO com.xyz.api.main-在5.956秒内启动main(JVM

  • 错误:任务执行失败 ': app:使用合并Java Res For Debug转换资源'。 com.android.build.api.transform.TransformException:com.android.builder.packaging.DuplicateFileException: APK META-INF/LICENSE File1中复制的重复文件: C:\用户Jithin-P

  • 我正在Lynda.com https://www.lynda.com/spring-tutorials/spring-boot-actuator/653258/709599-4.html?autoplay=true上学习spring-boot教程,演示者简单地说关闭管理安全性这就是application.yml的样子 是否有一种方法可以将application.yml设置为默认属性文件,我在这里遗

  • 我在应用程序中添加了Spring Boot执行器,但现在我想添加由执行器创建的新服务(/health/metrics..)在我大摇大摆的文件上。 我不知道如何配置执行器和大摇大摆。

  • 我的问题是:如何在使用Log4j2时查看所有记录器的完整列表,而不在Spring-boot应用程序中进行登录? 编辑:这里是我的pom.xml