Spring boot admin是一个很棒的工具,可以使我的Spring启动应用程序(在我的例子中是一个Web服务器)的运行状况和指标可用。我跟着reference guide并最终可以运行它,但有一个例外:服务器似乎无法识别客户端是否崩溃/停机。
对于测试,我目前使用单独的应用程序,两者都在同一主机上运行。在最终版本中,我计划让多个客户端(在不同的IP地址上运行)向在其独立IP上运行的单个服务器注册。
服务器(一个单独的春季启动项目)
的pom.xml
...
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-server</artifactId>
</dependency>
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-server-ui</artifactId>
</dependency>
...
application.properties:
server.port=8081
MyMain:
@Configuration
@EnableAutoConfiguration
@EnableAdminServer
public class MyMain {
public static void main(String[] args) {
SpringApplication.run(MyMain.class, args);
}
}
客户端(我要监控的WebApp):
的pom.xml:
...
<!-- SPRING BOOT ADMIN (CLIENT) -->
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-client</artifactId>
</dependency>
...
application.properties:
server.port=8080
spring.boot.admin.url=http://localhost:8081
spring.boot.admin.client.management-url=http://localhost:8081
spring.boot.admin.client.service-url=http://localhost:8080
spring.boot.admin.client.name=my-rest-app
通过此设置,我可以连接到http://localhost:8080以获取我的网络应用或http://localhost:8081以查看管理/监控用户界面。状态显示UP,我可以浏览mem / heap / traces /...
现在的问题是,如果我杀了网络应用程序,状态仍为UP。
spring.boot.admin.monitor.period
每隔10秒检查客户端应用程序的状态。答案 0 :(得分:1)
尝试从项目目录 -
通过命令行运行应用程序mvn spring-boot:run
答案 1 :(得分:1)
这很简单。
kill -15 PID
在application.properties中设置它。
请注意,这仅适用于您的应用程序正常终止或使用SIGTERM(mM[iRow,j] = p[k]
)。
如果你杀了你的应用程序,应用程序将不会取消注册,因为上下文没有正确关闭。
在此处查看更多内容 - Apache JMeter Properties Customization Guide