| <!doctype html> |
| <html lang="zh-cn" dir="ltr" class="blog-wrapper blog-list-page plugin-blog plugin-id-default"> |
| <head> |
| <meta charset="UTF-8"> |
| <meta name="viewport" content="width=device-width,initial-scale=1"> |
| <meta name="generator" content="Docusaurus v2.0.0-rc.1"> |
| <link rel="alternate" type="application/rss+xml" href="/zh-cn/blog/rss.xml" title="HertzBeat RSS Feed"> |
| <link rel="alternate" type="application/atom+xml" href="/zh-cn/blog/atom.xml" title="HertzBeat Atom Feed"> |
| <link rel="alternate" type="application/json" href="/zh-cn/blog/feed.json" title="HertzBeat JSON Feed"> |
| |
| |
| |
| <link rel="search" type="application/opensearchdescription+xml" title="HertzBeat" href="/zh-cn/opensearch.xml"> |
| |
| |
| <link rel="icon" href="/zh-cn/img/tancloud-logo.svg"> |
| <link rel="manifest" href="/zh-cn/manifest.json"> |
| <meta name="theme-color" content="rgb(234, 90, 7)"> |
| <meta name="apple-mobile-web-app-capable" content="yes"> |
| <meta name="apple-mobile-web-app-status-bar-style" content="#000"> |
| <link rel="apple-touch-icon" href="/zh-cn/img/tancloud-logo.svg"> |
| <link rel="mask-icon" href="/zh-cn/img/tancloud-logo.svg" color="rgb(234, 90, 7)"> |
| <meta name="msapplication-TileImage" content="/zh-cn/img/tancloud-logo.svg"> |
| <meta name="msapplication-TileColor" content="#000"> |
| |
| <script src="https://hm.baidu.com/hm.js?77fb03ed1c6c1267119fec6d84dd88f3" async></script><title data-rh="true">博客 | HertzBeat</title><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:image" content="https://hertzbeat.com/zh-cn/img/tancloud-logo.svg"><meta data-rh="true" name="twitter:image" content="https://hertzbeat.com/zh-cn/img/tancloud-logo.svg"><meta data-rh="true" property="og:url" content="https://hertzbeat.com/zh-cn/blog/page/17"><meta data-rh="true" name="docusaurus_locale" content="zh-cn"><meta data-rh="true" name="docsearch:language" content="zh-cn"><meta data-rh="true" name="keywords" content="monitor, apm, 监控, 开源, uptime, opensource"><meta data-rh="true" property="og:title" content="博客 | HertzBeat"><meta data-rh="true" name="description" content="博客文章"><meta data-rh="true" property="og:description" content="博客文章"><meta data-rh="true" name="docusaurus_tag" content="blog_posts_list"><meta data-rh="true" name="docsearch:docusaurus_tag" content="blog_posts_list"><link data-rh="true" rel="icon" href="/zh-cn/img/tancloud-logo.svg"><link data-rh="true" rel="canonical" href="https://hertzbeat.com/zh-cn/blog/page/17"><link data-rh="true" rel="alternate" href="https://hertzbeat.com/zh-cn/blog/page/17" hreflang="zh-cn"><link data-rh="true" rel="alternate" href="https://hertzbeat.com/blog/page/17" hreflang="en"><link data-rh="true" rel="alternate" href="https://hertzbeat.com/blog/page/17" hreflang="x-default"><link data-rh="true" rel="preconnect" href="https://JMM99UL1H5-dsn.algolia.net" crossorigin="anonymous"><link rel="stylesheet" href="/zh-cn/assets/css/styles.8cd55f13.css"> |
| <link rel="preload" href="/zh-cn/assets/js/runtime~main.2a4b3d8a.js" as="script"> |
| <link rel="preload" href="/zh-cn/assets/js/main.dc1c6a72.js" as="script"> |
| </head> |
| <body class="navigation-with-keyboard"> |
| <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus"> |
| <div role="region"><a href="#" class="skipToContent_fXgn">跳到主要内容</a></div><nav class="navbar navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle clean-btn" type="button" tabindex="0"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/zh-cn/"><div class="navbar__logo"><img src="/zh-cn/img/hertzbeat-brand.svg" alt="An open source, real-time monitoring tool with custom-monitor and agentLess." class="themedImage_ToTc themedImage--light_HNdA"><img src="/zh-cn/img/hertzbeat-brand.svg" alt="An open source, real-time monitoring tool with custom-monitor and agentLess." class="themedImage_ToTc themedImage--dark_i4oU"></div><b class="navbar__title text--truncate">HertzBeat</b></a><a class="navbar__item navbar__link" href="/zh-cn/docs/">文档中心</a><a aria-current="page" class="navbar__item navbar__link navbar__link--active" href="/zh-cn/blog/">博客</a><div class="navbar__item dropdown dropdown--hoverable"><a href="#" aria-haspopup="true" aria-expanded="false" role="button" class="navbar__link">其它信息</a><ul class="dropdown__menu"><li><a class="dropdown__link" href="/zh-cn/docs/others/contact">讨论交流</a></li><li><a class="dropdown__link" href="/zh-cn/docs/others/developer">开发者们</a></li><li><a class="dropdown__link" href="/zh-cn/docs/others/contributing">贡献者指南</a></li><li><a href="https://github.com/orgs/dromara/projects/6" target="_blank" rel="noopener noreferrer" class="dropdown__link">项目看板<svg width="12" height="12" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li><a class="dropdown__link" href="/zh-cn/docs/others/sponsor">赞助我们</a></li><li><a class="dropdown__link" href="/zh-cn/docs/others/resource">相关资源</a></li></ul></div></div><div class="navbar__items navbar__items--right"><div class="navbar__item dropdown dropdown--hoverable dropdown--right"><a class="navbar__link" aria-haspopup="true" aria-expanded="false" role="button" href="/zh-cn/docs/">v1.5.x</a><ul class="dropdown__menu"><li><a class="dropdown__link" href="/zh-cn/docs/">v1.5.x</a></li><li><a class="dropdown__link" href="/zh-cn/docs/v1.4.x/">v1.4.x</a></li><li><a class="dropdown__link" href="/zh-cn/docs/v1.3.x/">v1.3.x</a></li><li><a class="dropdown__link" href="/zh-cn/docs/v1.1.x/">v1.1.x</a></li></ul></div><div class="navbar__item dropdown dropdown--hoverable dropdown--right"><a href="#" aria-haspopup="true" aria-expanded="false" role="button" class="navbar__link"><svg viewBox="0 0 24 24" width="20" height="20" aria-hidden="true" class="iconLanguage_nlXk"><path fill="currentColor" d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path></svg>中文(中国)</a><ul class="dropdown__menu"><li><a href="/zh-cn/blog/page/17" target="_self" rel="noopener noreferrer" class="dropdown__link dropdown__link--active">中文(中国)</a></li><li><a href="/blog/page/17" target="_self" rel="noopener noreferrer" class="dropdown__link">English</a></li></ul></div><div class="toggle_vylO colorModeToggle_DEke"><button class="clean-btn toggleButton_gllP toggleButtonDisabled_aARS" type="button" disabled="" title="切换浅色/暗黑模式(当前为浅色模式)" aria-label="切换浅色/暗黑模式(当前为浅色模式)"><svg viewBox="0 0 24 24" width="24" height="24" class="lightToggleIcon_pyhR"><path fill="currentColor" d="M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" class="darkToggleIcon_wfgR"><path fill="currentColor" d="M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"></path></svg></button></div><div class="searchBox_ZlJk"><button type="button" class="DocSearch DocSearch-Button" aria-label="搜索"><span class="DocSearch-Button-Container"><svg width="20" height="20" class="DocSearch-Search-Icon" viewBox="0 0 20 20"><path d="M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path></svg><span class="DocSearch-Button-Placeholder">搜索</span></span><span class="DocSearch-Button-Keys"></span></button></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div class="main-wrapper mainWrapper_z2l0"><div class="container margin-vert--lg"><div class="row"><aside class="col col--3"><nav class="sidebar_re4s thin-scrollbar" aria-label="最近博文导航"><div class="sidebarItemTitle_pO2u margin-bottom--md">近期更新文章</div><ul class="sidebarItemList_Yudw clean-list"><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2024/01/18/hertzbeat-v1.4.4">HertzBeat v1.4.4 发布!</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2024/01/11/new-committer">热烈欢迎 HertzBeat 三位小伙伴新晋社区 Committer!</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2023/12/11/hertzbeat-v1.4.3">HertzBeat v1.4.3 发布,Prometheus兼容!</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2023/11/12/hertzbeat-v1.4.2">HertzBeat v1.4.2 版本发布,自定义消息通知模版</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2023/09/26/hertzbeat-v1.4.1">更好的用户体验, 开源实时监控 HertzBeat v1.4.1 发布</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2023/08/28/new-committer">热烈欢迎 HertzBeat 小伙伴新晋社区 Committer!</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2023/08/14/hertzbeat-v1.4.0">重磅更新,HertzBeat 集群版发布,易用友好的开源实时监控系统!</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2023/07/05/hertzbeat-v1.3.2">开源实时监控 HertzBeat v1.3.2 发布, 更稳定更易用</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2023/05/11/greptimedb-store">GreptimeDB & HertzBeat, 使用开源时序数据库 GreptimeDB 存储开源实时监控 HertzBeat 的度量数据</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2023/05/09/hertzbeat-v1.3.1">50天36位贡献者,开源实时监控工具 HertzBeat v1.3.1 发布</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2023/03/22/monitor-springboot2">使用 HertzBeat 5分钟搞定 SpringBoot2 监控告警</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2023/03/15/hertzbeat-v1.3.0">重磅更新 开源实时监控工具 HertzBeat v1.3.0 发布 在线自定义来了</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2023/02/15/monitor-linux">使用开源实时监控 HertzBeat 监控 Linux 操作系统</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2023/02/11/monitor-mysql">使用开源实时监控工具 HertzBeat 对 Mysql 数据库监控告警实践</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2023/02/10/new-committer">恭喜 HertzBeat 又迎来了两位新晋社区 Committer</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2023/02/02/monitor-dynamic-tp">使用 HertzBeat 对 线程池框架 DynamicTp 的监控实践</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2023/01/08/monitor-shenyu">使用 HertzBeat 对 API 网关 Apache ShenYu 的监控实践</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2023/01/05/monitor-iotdb">使用 HertzBeat 对物联网数据库 IoTDB 进行监控实践</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2022/12/28/hertzbeat-v1.2.3">HertzBeat v1.2.3 发布!支持Prometheus,ShenYu,IotDb</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2022/12/19/new-committer">恭喜 HertzBeat 迎来了两位新晋社区Committer</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2022/11/28/hertzbeat-v1.2.2">HertzBeat v1.2.2 发布!新增K8S监控等众多特性</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2022/10/08/hertzbeat-v1.2.0">HertzBeat v1.2.0 发布!易用友好的开源实时监控工具</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2022/09/10/ssl-practice">SSL证书过期监控最佳实践</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2022/09/04/hertzbeat-v1.1.3">云监控系统 HertzBeat v1.1.3 发布!</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2022/07/10/hertzbeat-v1.1.1">云监控系统 HertzBeat v1.1.1 发布!</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2022/06/22/one-step-up">云监控系统 HertzBeat v1.1.0 发布!一条命令即可开启监控之旅!</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2022/06/19/hertzbeat-v1.1.0">云监控系统 HertzBeat v1.1.0 发布!一条命令即可开启监控之旅!</a></li><li class="sidebarItem__DBe"><a class="sidebarItemLink_mo7H" href="/zh-cn/blog/2022/06/01/hertzbeat-v1.0">云监控系统 HertzBeat v1.0 正式发布啦</a></li></ul></nav></aside><main class="col col--7" itemscope="" itemtype="http://schema.org/Blog"><article class="margin-bottom--xl" itemprop="blogPost" itemscope="" itemtype="http://schema.org/BlogPosting"><header><h2 class="title_f1Hy" itemprop="headline"><a itemprop="url" href="/zh-cn/blog/2023/01/08/monitor-shenyu">使用 HertzBeat 对 API 网关 Apache ShenYu 的监控实践</a></h2><div class="container_mt6G margin-vert--md"><time datetime="2023-01-08T00:00:00.000Z" itemprop="datePublished">2023年1月8日</time> · <!-- -->阅读需 8 分钟</div><div class="margin-top--md margin-bottom--sm row"><div class="col col--6 authorCol_Hf19"><div class="avatar margin-bottom--sm"><a href="https://github.com/tomsun28" target="_blank" rel="noopener noreferrer" class="avatar__photo-link"><img class="avatar__photo" src="https://avatars.githubusercontent.com/u/24788200?s=400&v=4" alt="tom"></a><div class="avatar__intro" itemprop="author" itemscope="" itemtype="https://schema.org/Person"><div class="avatar__name"><a href="https://github.com/tomsun28" target="_blank" rel="noopener noreferrer" itemprop="url"><span itemprop="name">tom</span></a></div><small class="avatar__subtitle" itemprop="description">tom</small></div></div></div></div></header><div class="markdown" itemprop="articleBody"><h2 class="anchor anchorWithStickyNavbar_LWe7" id="使用-hertzbeat-对-api-网关-apache-shenyu-进行监控实践5分钟搞定">使用 HertzBeat 对 API 网关 Apache ShenYu 进行监控实践,5分钟搞定!<a class="hash-link" href="#使用-hertzbeat-对-api-网关-apache-shenyu-进行监控实践5分钟搞定" title="标题的直接链接"></a></h2><h3 class="anchor anchorWithStickyNavbar_LWe7" id="apache-shenyu-介绍">Apache ShenYu 介绍<a class="hash-link" href="#apache-shenyu-介绍" title="标题的直接链接"></a></h3><blockquote><p>Apache ShenYu 一个异步的,高性能的,跨语言的,响应式的 API 网关。 </p></blockquote><ul><li>代理:支持Apache Dubbo,Spring Cloud,gRPC,Motan,SOFA,TARS,WebSocket,MQTT</li><li>安全性:签名,OAuth 2.0,JSON Web令牌,WAF插件</li><li>API治理:请求、响应、参数映射、Hystrix、RateLimiter插件</li><li>可观测性:跟踪、指标、日志记录插件</li><li>仪表板:动态流量控制,用户菜单权限的可视化后端</li><li>扩展:插件热插拔,动态加载</li><li>集群:NGINX、Docker、Kubernetes</li><li>语言:提供.NET,Python,Go,Java客户端用于API注册</li></ul><h3 class="anchor anchorWithStickyNavbar_LWe7" id="hertzbeat-介绍">HertzBeat 介绍<a class="hash-link" href="#hertzbeat-介绍" title="标题的直接链接"></a></h3><blockquote><p>HertzBeat 是一款开源,易用友好的实时监控工具,无需Agent,拥有强大自定义监控能力。<br> |
| <!-- -->支持对应用服务,数据库,操作系统,中间件,云原生等监控,阈值告警,告警通知(邮件微信钉钉飞书)。<br> |
| <!-- -->HertzBeat 的强大自定义,多类型支持,易扩展,低耦合,希望能帮助开发者和中小团队快速搭建自有监控系统。 </p></blockquote><h3 class="anchor anchorWithStickyNavbar_LWe7" id="在-hertzbeat-5分钟搞定监控-apache-shenyu">在 HertzBeat 5分钟搞定监控 Apache ShenYu<a class="hash-link" href="#在-hertzbeat-5分钟搞定监控-apache-shenyu" title="标题的直接链接"></a></h3><h4 class="anchor anchorWithStickyNavbar_LWe7" id="操作前提您已拥有-shenyu-环境和-hertzbeat-环境">操作前提,您已拥有 ShenYu 环境和 HertzBeat 环境。<a class="hash-link" href="#操作前提您已拥有-shenyu-环境和-hertzbeat-环境" title="标题的直接链接"></a></h4><ul><li>ShenYu <a href="https://shenyu.apache.org/zh/docs/deployment/deployment-before" target="_blank" rel="noopener noreferrer">部署安装文档</a> </li><li>HertzBeat <a href="https://hertzbeat.com/docs/start/docker-deploy" target="_blank" rel="noopener noreferrer">部署安装文档</a> </li></ul><h4 class="anchor anchorWithStickyNavbar_LWe7" id="一-在-shenyu-端开启metrics插件它将提供-metrics-接口数据">一. 在 ShenYu 端开启<code>metrics</code>插件,它将提供 metrics 接口数据。<a class="hash-link" href="#一-在-shenyu-端开启metrics插件它将提供-metrics-接口数据" title="标题的直接链接"></a></h4><blockquote><p>插件是 Apache ShenYu 网关的核心执行者,指标数据采集在 <code>ShenYu</code> 也是以插件的形式集成的 - <code>Metrics插件</code>。<br> |
| <code>Metrics插件</code>是网关用来监控自身运行状态(<code>JVM</code>相关),请求响应等相关指标进行监测。</p></blockquote><ol><li>在网关的 <code>pom.xml</code> 文件中添加 <code>metrics插件</code> 的依赖。</li></ol><div class="language-xml codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-xml codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token tag punctuation" style="color:#393A34"><</span><span class="token tag" style="color:#00009f">dependency</span><span class="token tag punctuation" style="color:#393A34">></span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token tag punctuation" style="color:#393A34"><</span><span class="token tag" style="color:#00009f">groupId</span><span class="token tag punctuation" style="color:#393A34">></span><span class="token plain">org.apache.shenyu</span><span class="token tag punctuation" style="color:#393A34"></</span><span class="token tag" style="color:#00009f">groupId</span><span class="token tag punctuation" style="color:#393A34">></span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token tag punctuation" style="color:#393A34"><</span><span class="token tag" style="color:#00009f">artifactId</span><span class="token tag punctuation" style="color:#393A34">></span><span class="token plain">shenyu-spring-boot-starter-plugin-metrics</span><span class="token tag punctuation" style="color:#393A34"></</span><span class="token tag" style="color:#00009f">artifactId</span><span class="token tag punctuation" style="color:#393A34">></span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token tag punctuation" style="color:#393A34"><</span><span class="token tag" style="color:#00009f">version</span><span class="token tag punctuation" style="color:#393A34">></span><span class="token plain">${project.version}</span><span class="token tag punctuation" style="color:#393A34"></</span><span class="token tag" style="color:#00009f">version</span><span class="token tag punctuation" style="color:#393A34">></span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token tag punctuation" style="color:#393A34"></</span><span class="token tag" style="color:#00009f">dependency</span><span class="token tag punctuation" style="color:#393A34">></span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="复制代码到剪贴板" title="复制" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ol start="2"><li><code>metric</code>插件 采集默认是关闭的, 在网关的配置<code>yaml</code>文件中编辑如下内容:</li></ol><div class="language-yaml codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-yaml codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token key atrule" style="color:#00a4db">shenyu</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">metrics</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">enabled</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token boolean important" style="color:#36acaa">true</span><span class="token plain"> </span><span class="token comment" style="color:#999988;font-style:italic">#设置为 true 表示开启</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">name</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> prometheus </span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">host</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> 127.0.0.1 </span><span class="token comment" style="color:#999988;font-style:italic">#暴露的ip</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">port</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">8090</span><span class="token plain"> </span><span class="token comment" style="color:#999988;font-style:italic">#暴露的端口</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">jmxConfig</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token comment" style="color:#999988;font-style:italic">#jmx配置</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">props</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> </span><span class="token key atrule" style="color:#00a4db">jvm_enabled</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token boolean important" style="color:#36acaa">true</span><span class="token plain"> </span><span class="token comment" style="color:#999988;font-style:italic">#开启jvm的监控指标</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="复制代码到剪贴板" title="复制" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ol start="3"><li>重启 ShenYu网关, 打开浏览器或者用curl 访问 <code>http://ip:8090</code>, 就能看到metric数据了。 </li></ol><h4 class="anchor anchorWithStickyNavbar_LWe7" id="二-在-hertzbeat-监控页面添加-shenyu-监控">二. 在 HertzBeat 监控页面添加 ShenYu 监控<a class="hash-link" href="#二-在-hertzbeat-监控页面添加-shenyu-监控" title="标题的直接链接"></a></h4><ol><li>点击新增 ShenYu 监控 </li></ol><p>路径:菜单 -> 中间件监控 -> ShenYu监控 -> 新增ShenYu监控 </p><p><img loading="lazy" alt="hertzbeat" src="/zh-cn/assets/images/monitor-shenyu-1-9b12c5875c4c6bb3863f7e4efacb0ab6.png" width="4064" height="2166" class="img_ev3q"> </p><ol start="2"><li>配置监控 ShenYu 所需参数 </li></ol><p>在监控页面填写 ShenYu <strong>服务IP</strong>,<strong>监控端口</strong>(默认8090),最后点击确定添加即可。<br> |
| <!-- -->其他参数如<strong>采集间隔</strong>,<strong>超时时间</strong>等可以参考<a href="https://hertzbeat.com/docs/help/shenyu/" target="_blank" rel="noopener noreferrer">帮助文档</a> <a href="https://hertzbeat.com/docs/help/shenyu/" target="_blank" rel="noopener noreferrer">https://hertzbeat.com/docs/help/shenyu/</a> </p><p><img loading="lazy" alt="hertzbeat" src="/zh-cn/assets/images/monitor-shenyu-1-9b12c5875c4c6bb3863f7e4efacb0ab6.png" width="4064" height="2166" class="img_ev3q"> </p><ol start="3"><li>完成✅,现在我们已经添加好对 ShenYu 的监控了,查看监控列表即可看到我们的添加项。 </li></ol><p><img loading="lazy" alt="hertzbeat" src="/zh-cn/assets/images/monitor-shenyu-3-f0835dba46e9e644bbad609fea757d2d.png" width="4064" height="2166" class="img_ev3q"> </p><ol start="4"><li>点击监控列表项的<strong>操作</strong>-><strong>监控详情图标</strong> 即可浏览 ShenYu 的实时监控指标数据。 </li></ol><p><img loading="lazy" alt="hertzbeat" src="/zh-cn/assets/images/monitor-shenyu-4-0300bcf78c5e2f606ab780bec8a31757.png" width="4064" height="2166" class="img_ev3q"> </p><ol start="5"><li>点击<strong>监控历史详情TAB</strong> 即可浏览 ShenYu 的历史监控指标数据图表📈。 </li></ol><p><img loading="lazy" alt="hertzbeat" src="/zh-cn/assets/images/monitor-shenyu-5-959d049b8246df725b9a7ebfb993ae71.png" width="4064" height="2166" class="img_ev3q"> </p><p><img loading="lazy" alt="hertzbeat" src="/zh-cn/assets/images/monitor-shenyu-6-78533ff8941232b1be80110474edfe17.png" width="4064" height="2166" class="img_ev3q"></p><p><strong>DONE!完成啦!通过上面几步,总结起来其实也就只用两步</strong> </p><ul><li><strong>第一步开启 ShenYu 端<code>metrics</code>插件功能</strong> </li><li><strong>第二步在 HertzBeat 监控页面配置IP端口添加监控即可</strong> </li></ul><div class="theme-admonition theme-admonition-tip alert alert--success admonition_LlT9"><div class="admonitionHeading_tbUL"><span class="admonitionIcon_kALy"><svg viewBox="0 0 12 16"><path fill-rule="evenodd" d="M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"></path></svg></span>提示</div><div class="admonitionContent_S0QG"><p>通过上面的两步我们就完成了对 Apache ShenYu 的监控,我们可以在 HertzBeat 随时查看监控详情指标信息来观测其服务状态。 |
| 当然只是看肯定是不完美的,监控往往伴随着告警阈值,当 ShenYu 的某些指标超出我们的期望值或异常时,能及时的通知到我们对应的负责人,负责人收到通知处理问题,这样才是一个完整的监控告警流程。</p></div></div><p><strong>接下来我们就来一步一步演示如何配置 HertzBeat 系统里的阈值告警通知,让 ShenYu 的指标异常时,及时通知给我们</strong> </p><h4 class="anchor anchorWithStickyNavbar_LWe7" id="三-在-hertzbeat-系统添加-shenyu-指标阈值告警">三. 在 HertzBeat 系统添加 ShenYu 指标阈值告警<a class="hash-link" href="#三-在-hertzbeat-系统添加-shenyu-指标阈值告警" title="标题的直接链接"></a></h4><ol><li>对某个重要指标配置告警阈值 </li></ol><p>路径:菜单 -> 告警阈值 -> 新增阈值 </p><ul><li>选择配置的指标对象,ShenYu 监控有非常多的指标,我们举例对 <code>打开的文件描述符的数量</code> <code>process_open_fds</code> -> <code>value</code> 这个指标进行阈值设置, 当服务端打开文件描述符数量大于3000时发出告警。 </li><li>这里我们就配置当此指标<code>process_open_fds</code> 的 <code>value>3000</code> 时发出告警,告警级别为<strong>警告告警</strong>,三次即触发,具体如下图。 </li></ul><p><img loading="lazy" alt="hertzbeat" src="/zh-cn/assets/images/monitor-shenyu-7-17d6e2393770eb0bfe6822e22c70d924.png" width="4064" height="2166" class="img_ev3q"> </p><ol start="2"><li>新增消息通知接收人</li></ol><blockquote><p>配置接收人,让告警消息知道要发给谁,用什么方式发。 </p></blockquote><p>路径:菜单 -> 告警通知 -> 告警接收人 -> 新增接收人 </p><p>消息通知方式支持 <strong>邮件,钉钉,企业微信,飞书,WebHook,短信</strong>等,我们这里以常用的钉钉为例。 </p><ul><li>参照此<a href="https://hertzbeat.com/docs/help/alert_dingtalk" target="_blank" rel="noopener noreferrer">帮助文档</a> <a href="https://hertzbeat.com/docs/help/alert_dingtalk" target="_blank" rel="noopener noreferrer">https://hertzbeat.com/docs/help/alert_dingtalk</a> 在钉钉端配置机器人,设置安全自定义关键词<code>HertzBeat</code>,获取对应<code>access_token</code>值。 </li><li>在 HertzBeat 配置接收人参数如下。 </li></ul><p>【告警通知】->【新增接收人】 ->【选择钉钉机器人通知方式】->【设置钉钉机器人ACCESS_TOKEN】-> 【确定】</p><p><img loading="lazy" alt="hertzbeat" src="/zh-cn/assets/images/alert-notice-1-3bad6e06e2c870849bc656a2092d59ac.png" width="3436" height="890" class="img_ev3q"> </p><ol start="3"><li>配置关联的告警通知策略⚠️ 【新增通知策略】-> 【将刚设置的接收人关联】-> 【确定】 </li></ol><blockquote><p>配置告警通知策略,让告警消息与接收人绑定,这样就能决定哪些告警发给哪个人。</p></blockquote><p><img loading="lazy" alt="hertzbeat" src="/zh-cn/assets/images/alert-notice-2-8025b90624873463fe0a3f75bd7efafa.png" width="3436" height="1088" class="img_ev3q"> </p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="完毕现在坐等告警消息过来啦叮叮叮叮">完毕,现在坐等告警消息过来啦。叮叮叮叮<a class="hash-link" href="#完毕现在坐等告警消息过来啦叮叮叮叮" title="标题的直接链接"></a></h3><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">[HertzBeat告警通知]</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">告警目标对象 : shenyu.process_open_fds.value</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">所属监控任务ID : 205540620349696</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">所属任务名称 : SHENYU_localhost</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">告警级别 : 警告告警</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">告警触发时间 : 2023-01-08 22:17:06</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">内容详情 : 请注意⚠️ ShenYu网关打开的文件描述符的数量为 3044 超过3000</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="复制代码到剪贴板" title="复制" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h2 class="anchor anchorWithStickyNavbar_LWe7" id="小结">小结<a class="hash-link" href="#小结" title="标题的直接链接"></a></h2><div class="theme-admonition theme-admonition-tip alert alert--success admonition_LlT9"><div class="admonitionHeading_tbUL"><span class="admonitionIcon_kALy"><svg viewBox="0 0 12 16"><path fill-rule="evenodd" d="M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"></path></svg></span>提示</div><div class="admonitionContent_S0QG"><p>这篇实践文章带我们体验了如何使用 HertzBeat 监控 Apache ShenYu 指标数据,可以发现将 <code>监控-告警-通知</code> 集一体的 HertzBeat 在操作与使用方面更加的便捷,在页面上简单点一点就能把 ShenYu 纳入监控,再也不需要部署多个组件,写多个有门槛的YML配置文件了。 </p></div></div><p>Apache ShenYu Github: <a href="https://github.com/apache/shenyu" target="_blank" rel="noopener noreferrer">https://github.com/apache/shenyu</a><br> |
| <!-- -->HertzBeat Github: <a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer">https://github.com/dromara/hertzbeat</a> </p><p><strong>欢迎了解使用Star支持哦!</strong></p><p>只需要一条docker命令即可安装体验heartbeat :<br> |
| <code>docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat</code></p></div><footer class="row docusaurus-mt-lg"><div class="col"><b>标签:</b><ul class="tags_jXut padding--none margin-left--sm"><li class="tag_QGVx"><a class="tag_zVej tagRegular_sFm0" href="/zh-cn/blog/tags/opensource">opensource</a></li><li class="tag_QGVx"><a class="tag_zVej tagRegular_sFm0" href="/zh-cn/blog/tags/practice">practice</a></li></ul></div></footer></article><nav class="pagination-nav" aria-label="博文列表分页导航"><a class="pagination-nav__link pagination-nav__link--prev" href="/zh-cn/blog/page/16"><div class="pagination-nav__label">较新的博文</div></a><a class="pagination-nav__link pagination-nav__link--next" href="/zh-cn/blog/page/18"><div class="pagination-nav__label">较旧的博文</div></a></nav></main></div></div></div><footer class="footer"><div class="container container-fluid"><div class="row footer__links"><div class="col footer__col"><div class="footer__title">产品介绍</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/zh-cn/docs/start/quickstart">安装文档</a></li><li class="footer__item"><a class="footer__link-item" href="/zh-cn/docs/help/guide">帮助文档</a></li></ul></div><div class="col footer__col"><div class="footer__title">社区交流</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://github.com/dromara/hertzbeat/discussions/" target="_blank" rel="noopener noreferrer" class="footer__link-item">社区讨论<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a class="footer__link-item" href="/zh-cn/docs/others/contact">联系交流</a></li></ul></div><div class="col footer__col"><div class="footer__title">相关资源</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://github.com/dromara/hertzbeat" target="_blank" rel="noopener noreferrer" class="footer__link-item">Github仓库<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a class="footer__link-item" href="/zh-cn/docs/others/resource">其它资源</a></li></ul></div></div><div class="footer__bottom text--center"><div class="margin-bottom--sm"><a href="https://github.com/dromara/hertzbeat" rel="noopener noreferrer" class="footerLogoLink_BH7S"><img src="/zh-cn/img/hertzbeat-brand.svg" alt="HertzBeat" class="themedImage_ToTc themedImage--light_HNdA footer__logo"><img src="/zh-cn/img/hertzbeat-brand.svg" alt="HertzBeat" class="themedImage_ToTc themedImage--dark_i4oU footer__logo"></a></div><div class="footer__copyright">Copyright © 2024 HertzBeat</div></div></div></footer></div> |
| <script src="/zh-cn/assets/js/runtime~main.2a4b3d8a.js"></script> |
| <script src="/zh-cn/assets/js/main.dc1c6a72.js"></script> |
| </body> |
| </html> |