通过自定义 Java SDK 埋点的方式将应用接入 AHAS 应用流控降级,可以更加灵活地对任意代码块进行操作。本文介绍如何通过自定义埋点接入 AHAS 应用流控降级。

操作步骤

  1. 登录 AHAS 控制台,然后在页面左上角选择地域
  2. 在左侧导航栏中选择流控降级 > 应用流控
  3. 应用列表页面右上角单击新应用接入,然后选择 SDK 接入 > 自定义埋点页签。
    自定义埋点 页签中查看 Pom 依赖最新版本和 License 信息(非公网地域不需要)。
  4. 选择以下任意一种方式,在应用中添加应用流控降级依赖。
    • 在应用的 Pom 文件中添加以下依赖:
      <dependency>
        <groupId>com.alibaba.csp</groupId>
        <artifactId>ahas-sentinel-client</artifactId>
        <!-- 可指定版本号,最新版本见 AHAS 控制台流控降级应用接入页。 -->
        <version>x.y.z</version>
      </dependency>
      说明自定义埋点页签查看 Pom 依赖最新版本,将 x.y.z 替换为新版本的版本号。
    • 添加 JAR 包依赖。

      自定义埋点页面单击请点此链接下载下载压缩包,并将压缩包中的所有 JAR 包放置在 classpath 目录下。

  5. 使用以下代码包住您的业务逻辑:
    Entry entry = null;
    try { 
      //保护业务逻辑
      entry = SphU.entry("HelloWorld"); 
      System.out.println("hello world");
    } catch (BlockException e) {
      //处理拦截逻辑
    } finally {
      //请确保 exit() 逻辑在此处被调用。 
      if (entry != null) {
        entry.exit();
      }
    }t();
      }
    }
  6. 通过以下任意一种方式,配置应用的启动参数。
    • 添加 JVM -D 参数。
      //将 AppName 替换为自定义的应用名称
      -Dproject.name=AppName
      //将 AppName 替换为自定义的应用名称,将 <license> 替换为真实值。
      -Dproject.name=AppName
      -Dahas.license=<license>
    • 修改 Spring Property 配置文件。

      若您已使用 Spring 框架,且希望将配置写入 Spring Property 文件中,请参见以下步骤:

      1. 在 Pom 文件中引入以下依赖:
        <dependency>
          <groupId>com.alibaba.csp</groupId>
          <artifactId>spring-boot-starter-ahas-sentinel-client</artifactId>
          <!-- 可指定版本号,最新版本见 AHAS 控制台流控降级应用接入页引导。 -->
          <version>x.y.z</version>
        </dependency>
        说明自定义埋点页签查看 Pom 依赖最新版本,将 x.y.z 替换为新版本的版本号。
      2. 在 application.properties 配置文件中,配置如下:
        #指定您要接入的特定的 AHAS 环境
        ahas.namespace=default
        #自定义您的应用名称
        project.name=AppName
        #指定您要接入的特定的 AHAS 环境
        ahas.namespace=default
        #自定义您的应用名称
        project.name=AppName
        #配置 license 信息
        ahas.license=<license>
  7. (可选)使用注解方式配置应用触发限流、降级或系统保护规则时的处理逻辑。 参见注解方式
    说明 若未执行此步骤,当应用触发流控降级规则时,默认抛出 BlockException 异常类的子类(触发流控规则,则抛出流控异常 FlowException;触发降级规则,则抛出降级异常 DegradeException)。

结果验证

启动应用并调用配置埋点的方法。若应用出现在 AHAS 控制台流控降级 > 应用流控页面,且在该应用的监控详情页面有能看到配置埋点的方法,则说明接入成功。

后续操作

为应用配置流控降级规则请参见以下文档: