通过自定义Java SDK埋点的方式将应用接入MSE微服务治理,可以更加灵活地对任意代码块进行操作。本文介绍如何通过Java SDK自定义埋点接入MSE微服务治理。
限制条件
目前MSE Java SDK仅支持流量防护能力,不支持无损上下线、流量灰度能力。
目前MSE Java SDK不支持与AHAS SDK、AHAS Java Agent混用。
请确保您的MSE Java Agent版本为3.2.0版本及以上。
操作步骤
在应用的pom.xml文件中添加如下依赖。
<dependency> <groupId>com.aliyun.mse</groupId> <artifactId>mse-starter</artifactId> <version>0.1.9-MSE</version> </dependency>
使用如下代码添加埋点。
import com.alibaba.csp.sentinel.Entry; import com.alibaba.csp.sentinel.SphU; import com.alibaba.csp.sentinel.slots.block.BlockException; import com.alibaba.csp.sentinel.EntryType; // HelloWorld为该调用资源名称,控制台上监控页面、接口列表会显示该资源。 // 配置规则的时候也是针对某个资源名称配置。 // EntryType.IN标识该资源为入口资源。 try (Entry entry = SphU.entry("HelloWorld", EntryType.IN)) { // 被保护的业务逻辑。 System.out.println("Hello MSE Sentinel!"); } catch (BlockException e) { // 触发流控降级,在此处进行限流处理(如fallback或记录日志)。 }
说明EntryType用于区分该资源是入口流量(inbound)还是出口流量(outbound),EntryType.IN代表入口流量,EntryType.OUT代表出口流量。系统规则只对入口资源生效。
控制台展示的监控的应用总流量仅统计EntryType.IN的流量。
SphU相关API文档,请参见常用类及其方法。
自定义埋点的资源名称最长不能超过1024个字符。
配置应用的环境变量,以接入MSE微服务治理。
环境变量
说明
MSE_REGION_ID
应用接入MSE微服务治理的地域。例如,cn-hangzhou。
MSE_LICENSE_KEY
应用接入MSE微服务治理的LicenseKey。可以在治理中心 > 概览页面,单击右上角查看 License Key获取。
MSE_NAMESPACE
应用接入的MSE微服务治理命名空间。
MSE_APP_NAME
自定义应用名称。
结果验证
登录MSE治理中心控制台。在左侧导航栏,选择治理中心 > 应用治理,如果在应用列表页面出现该应用的资源卡片并且有数据上报,表明接入成功。
反馈
- 本页导读 (1)