上次文章Spring Boot Actuator---实时监控(一)主要是介绍的关于配置明细的。这篇文章主要是介绍运行时度量的。
1.2运行时度量
1.2.1查看应用程序的度量值(/metrics)
对于想要获得单个值,请求时/metrics/name
备注:
常用状态码:
200-请求成功
301-资源(网页等)被永久转移到其他URL
404-请求的资源(网页等)不存在
500-内部服务器错误
安利一个有关于HTTP的教程:
http://www.runoob.com/http/http-status-codes.html
1.2.2追踪Web请求(/trace)
trace默认是由内存存储的,能显示最近100个请求的信息,包含对/trace自己的请求。它在内存里维护了一个跟踪库。仅适用于生产环境。生产环境会因为内存限制而丢失。
timestamp属性:请求的时间;headers:请求和响应中所携带的头信息。
1.2.3监控应用程序健康情况(/health)
访问/health端点之后,最简单的该端点会显示一个JSON。{"status":"UP"}status属性显示了应用程序在运行中。此处的响应无关紧要,任何输出都说明这个应用程序在运行。
/health端点输出的某些信息可能涉及内容,因此对未经授权的请求只能提供简单的健康状态。如果经过身份验证,则可以提供更多信息。
示例如下:
1.3关闭应用程序
运用例子:在微服务架构中,你有多个微服务应用的实例运
行在云上,其中某个实例有问题了,你决定关闭该实例并让云服务提供商为你重启这个有问题的应用程序。在这个场景中,Actuator的/shutdown端点就很有用了。
为了关闭应用程序,要往/shutdown发送一个POST请求。关闭运行中的应用程序是件危险的事情,因此这个端点默认是关闭的。如果没有显式地开启这个功能,那么POST请求的结果是:
{"message":"This endpoint is disabled"}
要开启该端点,可以将endpoints.shutdown.enabled设置为true。可以把如下内容加入application.properties,借此开启/shutdown端点:
endpoints.shutdown.enabled=true
警告:
打开/shutdown端点后,要确保并非任何人都能关闭应用程序。这时应该保护/shutdown端点,只有经过授权的用户能关闭应用程序。
1.4获取应用信息(/info)
/info端点能展示各种希望发布的应用信息。针对该端点的GET请求的默认响应是:{}显然,一个空的JSON对象没什么用。但是可以通过配置带有info前缀的属性向/info端点的响应添加内容。例如,希望在响应中添加联系邮箱。可以在application.properties里设置
info.contactEmail=support@myreadinglist.com
再次访问/info端点,就能得到如下响应:
{
"contactEmail":"support@myreadinglist.com"
}