当前位置: 首页 > news >正文

网站开发 文学新湖南app客户端

网站开发 文学,新湖南app客户端,简单手机网站模板,评价中国建设银行网站目录 前言一、引入Actuator依赖二、暴露Actuator端点1. 配置文件2. 监控端点 三、自定义健康检查自定义健康检查类 四、vue前端代码五、监控器的优势六、监控指标的可视化1. Grafana2. Prometheus 七、安全性考虑安全配置示例 八、总结 前言 随着微服务架构的流行#xff0c;… 目录 前言一、引入Actuator依赖二、暴露Actuator端点1. 配置文件2. 监控端点 三、自定义健康检查自定义健康检查类 四、vue前端代码五、监控器的优势六、监控指标的可视化1. Grafana2. Prometheus 七、安全性考虑安全配置示例 八、总结 前言 随着微服务架构的流行对系统运行状况的监控和管理变得至关重要。Spring Cloud提供了强大的监控工具Actuator能够实时监控服务的运行状态、性能指标和健康状况。本文将介绍如何使用Spring Cloud的Actuator来实现微服务的监控。 一、引入Actuator依赖 首先我们需要在项目中引入Spring Boot Actuator的依赖。 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-actuator/artifactId /dependency这样做会自动添加Actuator相关的端点我们可以通过这些端点来获取系统的运行信息。 二、暴露Actuator端点 默认情况下Actuator的端点是不对外暴露的为了方便监控我们需要手动配置来暴露这些端点。 1. 配置文件 yamlCopy codemanagement:endpoints:web:exposure:include: * # 暴露所有端点base-path: /monitor # 设置端点的根路径endpoint:health:show-details: always # 显示健康检查的详细信息shutdown:enabled: true # 启用关闭应用的端点在上述配置中我们通过 management.endpoints.web.exposure.include 指定了要暴露的端点这里设置为 * 表示暴露所有端点。同时我们将端点的根路径设置为 /monitor方便统一管理。 2. 监控端点 Spring Boot Actuator提供了许多端点包括 /health、/info、/metrics 等。这些端点可以提供关于应用程序运行状况的信息。 例如访问 /monitor/health 端点可以获取应用程序的健康状况信息。 三、自定义健康检查 有时候我们需要根据业务需求自定义健康检查逻辑。Spring Boot Actuator允许我们通过实现 HealthIndicator 接口来自定义健康检查。 自定义健康检查类 package cn.weizi.main.endpoint;import cn.weizi.main.pojo.R; import org.springframework.boot.actuate.health.AbstractHealthIndicator; import org.springframework.boot.actuate.health.Health; import org.springframework.stereotype.Service; import org.springframework.web.bind.annotation.CrossOrigin; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;import java.util.concurrent.atomic.AtomicLong;Service CrossOrigin RestController RequestMapping(/Custom) public class CustomHealthIndicator extends AbstractHealthIndicator {private final AtomicLong lastRequestTime new AtomicLong(System.currentTimeMillis());Overrideprotected void doHealthCheck(Health.Builder builder) {long currentTime System.currentTimeMillis();long timeSinceLastRequest currentTime - lastRequestTime.get();try {if (timeSinceLastRequest 10000) {builder.up();} else {builder.down().withDetail(error, 10秒内没有请求);}} catch (Exception ex) {builder.down().withException(ex);}}GetMapping(check)private R check() {// 处理实际的请求逻辑lastRequestTime.set(System.currentTimeMillis());// 这里可以放置其他处理逻辑return new R(true, UP);} } 在上述示例中我们实现了一个自定义的健康检查类 CustomHealthIndicator通过继承 AbstractHealthIndicator 并实现 doHealthCheck 方法来自定义健康检查逻辑。在这里我们检查了最后一次请求的时间如果超过10秒没有请求将会返回一个健康状态为 DOWN 的信息。 四、vue前端代码 templatedivvan-notice-bar left-iconvolume-o text为了减少系统占用此页面每5秒刷新一次,如果不想等待可以下拉刷新/div v-ifloadingShowvan-overlay :showloadingShowdiv click.stopvan-loading size50px加载中.../van-loading/div/van-overlay/divdiv v-elsevan-cell-groupvan-cellv-for(component, componentName) in data.components:keycomponentName:titlecomponentName:labelgetStatusTag(component.status):valuecomponent.status DOWN ? 查看异常 : 运行正常clickhandleCellClick(component)//van-cell-groupvan-dialog v-modeldialogVisible title异常 themeround-buttonp classerror-message{{ currentComponentError }}/p/van-dialog/div/div /templatescriptimport request from /unilts/request; import redirectToHome from /unilts/redirectToHome;export default {components: {},data() {return {dialogVisible: false,currentComponentError: ,loadingShow: false,data: {status: UP,components: {EVS: {status: UP,details: {error: null,},},},},};},created() {this.onDataInit();// 初始加载数据this.timer setInterval(() {this.onDataInit(); // 每隔一定时间重新加载数据}, 5000); // 5秒一次可以根据需求调整时间间隔},destroyed() {clearInterval(this.timer); // 清除定时器防止内存泄漏},methods: {async onDataInit() {this.loadingShow true;await request.get(/SystemState/health).then((res) {console.log(res.data)if (res.data.flag) {this.data res.data.data;} else {this.data res.data.data;}}).finally(() {this.loadingShow false;})},getStatusTag(status) {if (status UP) {return van-tag typesuccess正常/van-tag;} else {return van-tag typedanger异常/van-tag;}},handleCellClick(component) {this.currentComponentError ;if (component.status DOWN) {this.currentComponentError component.details.error;this.dialogVisible true;}},}, }; /script style .error-message {white-space: pre-line;word-wrap: break-word;max-width: 30ch; /* 可根据需要调整最大宽度 */margin: auto; /* 添加居中的样式 */text-align: center; /* 文本水平居中 */ } /style 五、监控器的优势 实时监控Actuator提供了丰富的端点能够实时监控系统的运行状况、性能指标和健康状况帮助开发人员及时发现并解决问题。可配置性通过配置文件我们可以灵活地控制哪些端点需要暴露从而保证系统的安全性和稳定性。自定义扩展Actuator允许开发人员自定义健康检查逻辑根据具体业务需求进行监控和管理使得监控更加灵活和定制化。 六、监控指标的可视化 除了通过端点获取监控信息外我们还可以将监控指标可视化以便更直观地了解系统的运行状况。常见的可视化工具包括Grafana和Prometheus等。 1. Grafana Grafana是一款开源的数据可视化工具支持多种数据源并提供丰富的图表和仪表盘功能。我们可以通过将Actuator的监控数据导入到Grafana中实现监控指标的可视化展示。 2. Prometheus Prometheus是一款开源的监控系统可以实时收集并存储时间序列数据支持多维度的查询和告警功能。我们可以将Actuator暴露的监控端点数据导入到Prometheus中从而实现监控指标的存储和分析。 通过与Grafana或Prometheus等工具的集成我们可以更直观地了解系统的运行情况并及时采取措施应对潜在的问题保证系统的稳定性和可靠性。 七、安全性考虑 在暴露Actuator端点时我们需要考虑系统的安全性。默认情况下Actuator的端点是不对外暴露的我们需要手动配置来暴露这些端点并且可以通过配置用户名和密码来保护这些端点。 安全配置示例 yamlCopy codespring:security:user:name: adminpassword: password management:endpoints:web:exposure:include: *endpoint:health:show-details: alwaysshutdown:enabled: true在上述配置中我们通过 spring.security.user 配置了用户名和密码用于保护Actuator端点。只有提供了正确的用户名和密码才能访问这些端点从而确保系统的安全性。 八、总结 本文介绍了如何使用Spring Cloud的Actuator来实现微服务的监控并介绍了监控指标的可视化、安全性考虑和监控告警机制等相关内容。Actuator作为微服务架构中不可或缺的监控工具为开发人员提供了实时监控系统运行状况的便利并帮助他们及时发现并解决问题保证系统的稳定性和可靠性。 通过合理配置和使用Actuator我们可以更好地管理和监控微服务提高系统的可维护性和可靠性为用户提供更好的服务体验。 在本文中我们深入探讨了Actuator的配置和使用以及与其他监控工具的集成希望能够对读者在微服务监控领域的实践提供一些参考和帮助。 Actuator的强大功能和灵活性为微服务的监控和管理提供了便利是现代软件开发中不可或缺的重要组件。
http://www.dnsts.com.cn/news/164286.html

相关文章:

  • 更换网站ico火车头wordpress数据库
  • 成都网站专业制作辽宁省建设厅网站升级何时结束
  • 同一产品做多个网站吴江城乡建设局网站
  • php 网站开发 pdf学销售去哪个学校好
  • 网站开发如何实现数据库的链接网站搭建后显示建设中
  • 应税服务网站开发开票最新网络推广方法
  • 教育在线网站怎样做直播哈尔滨网站建设咨询
  • 深圳电子商务网站制作网站规划书500字
  • 旅游网站技术流程图seo研究中心学员案例
  • 做一个招聘信息的网站 用什么做网站的软件成都园林设计公司
  • 企业建设网站的目的是什么wordpress添加主题设置页面
  • php网站集成支付宝接口榆林网站建设
  • 怎样建设电影网站建设工程施工合同的特征
  • 黄岩区建设局网站网站seo应用
  • 增光路网站建设国际国内时事
  • 免费的行情网站app代码传媒公司注册需要什么条件
  • 网站的设计原则网站开发的必要性
  • 实验报告网站建设与网页制作360官网
  • 企业应如何进行网站建设建设部网站城建学院
  • 德阳做网站互动创意网站
  • 物流公司网站建设系统规划手机网站建设最新报价
  • 东莞定制建站网站推广公司seo运营是什么意思
  • 网站建设推广优化岗位说明书网站制作眼
  • 网站建设公司费用源码下载网站源码
  • 中国制造网网站类型推广赚钱项目
  • 做的比较好的游戏网站dw里响应式网站怎么做
  • 贵州省建设网站wordpress自动部署
  • 建设网站长沙wordpress做网站怎么样
  • 网站设计制作新报价图片主营商城网站建设
  • 竞价可以做两个网站吗网站百度百科怎么做