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

Spring执行器endpoint在应用端口上不工作

邢同
2023-03-14

我试图在与应用程序端口相同的端口上启用执行器endpoint(server.port=8080在application.properties文件中指定),但由于某种原因,它不起作用。当我运行应用程序时,我可以从应用程序返回响应,但不能从执行器endpoint返回响应。我可以看到日志中提到了暴露在基路径“/执行器”下面的endpoint,如下面的屏幕截图所示。但当我尝试点击执行器URL时,它给出了404。

URL,不工作:

  • http://localhost:8080/acture
  • http://localhost:8080/acture/health
  • http://localhost:8080/acture/info
    null

以下是我的application.propertieshtml" target="_blank">文件的内容:

camel.springboot.main-run-controller=true
camel.springboot.name=AppName
camel.rest.data-format-property.prettyPrint=false
camel.component.servlet.mapping.context-path=/*

server.port=8080
management.server.port=9000

management.endpoint.health.show-details=always
management.endpoint.beans.enabled=true

logging.level.org.springframework = INFO
logging.level.org.apache.camel.spring.boot = INFO
logging.level.org.apache.camel.impl = DEBUG

下面是pom.xml中的依赖关系:

<dependencies>
        <dependency>
            <groupId>org.apache.camel</groupId>
            <artifactId>camel-spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-tomcat</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-undertow</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.camel</groupId>
            <artifactId>camel-servlet-starter</artifactId>
        </dependency>
</dependencies>

共有1个答案

洪鸿
2023-03-14

关于Spring引导执行器文档

使用默认HTTP端口公开管理endpoint对于基于云的部署是一个明智的选择。但是,如果您的应用程序在自己的数据中心内运行,您可能更愿意通过使用不同的HTTP端口来公开endpoint。

它使用默认HTTP端口(8080)为执行器提供服务。我做了一个快速的检查,可以用Spring Boot 2.1.x和2.2.x来确认这一点。

 类似资料:
  • 我正在使用spring Boot2.0.4,并希望公开我的执行器endpoint。当向application.yml仅添加以下信息时,健康状况将被公开。 当我运行http://localhost:8080/acturet时,我会得到

  • 我用的是Spring靴2。x和普罗米修斯。 我想公开一个endpoint:普罗米修斯可以刮取的端口,它与执行器路径上的其他endpoint分离。 这是为了允许围绕执行器的不同安全模型与指标,是否有人知道这是否可行以及如何实现?

  • 我有一个使用spring Boot1.4.2和CXF JAXR的项目设置。我想把Spring引导执行器添加到项目中。这是我添加到项目中的配置。 在此之后创建一个WAR文件,然后将其部署在外部tomcat服务器中。但是当我访问健康URL localhost:8080/management/health时,它给出的是404 HTTP代码。服务器正常启动,我可以看到包含以下详细信息的日志: 运行状况配置

  • 我目前正在设置一些Spring boot应用程序,其中一个将是配置服务器,其他将是客户端。例如: 配置服务器 资源服务器 web ui(也是一个带有Spring Security和apache互动程序的引导应用程序) 我面临的问题是,在web ui中,执行器endpoint不工作,它们给出了401个错误。 web ui中Spring Security配置的以下代码id Spring配置代码 项目b

  • 在我的Spring启动应用程序Yaml中,我有: 然而,当我击中 docker-entrypoint.sh: 我错过了什么?在docker中是否需要进行任何配置来公开度量?谢谢你的回复。

  • null 这是我的应用程序。属性: 当我发出此http请求时: 它回报我: