通过Java Agent接入

若您的应用使用AHAS支持的第三方组件和框架,可使用Agent接入方式,零代码修改接入AHAS应用防护。本文以Java Agent为例介绍Agent接入方法。

前提条件

  • 确认应用使用的第三方组件和框架在支持列表中,更多信息,请参见支持组件列表

  • 自1.9.1版本开始,Java Agent兼容JDK 6~11版本。对于通过Spring Cloud Alibaba Sentinel开源方式接入的应用,无需去除对应依赖也可直接通过Java Agent方式接入。

操作步骤

  1. 登录AHAS控制台
  2. 在AHAS控制台左上角,选择应用接入的地域。
  3. 在控制台左侧导航栏中选择流量防护 > 应用防护
  4. 应用防护页面,单击新应用接入

  5. JAVA语言页签,单击Agent接入

  6. 安装并启动Java Agent。

    手动接入方式可以指定单个应用接入AHAS应用防护,操作时需要根据Java虚拟机运行的环境安装Java Agent。

    1. 下载ahas-java-agent.jar安装包至任意路径下,例如:/opt/aliyunahas/agent。下载安装包请单击ahas-java-agent.jar

    2. 添加JVM启动参数。

      类别

      添加参数

      非公网

      -Dproject.name=<AppName> -Dahas.namespace=default -Dahas.regionId=<RegionId> -javaagent:/opt/aliyunahas/agent/ahas-java-agent.jar
      说明
      • 将<AppName>替换为自定义的应用名称,/opt/aliyunahas/agent/ahas-java-agent.jar是ahas-java-agent.jar的下载路径,请替换为实际路径。

      • 将<RegionId>替换应用所在地域,地域与RegionId对应表请参见下文地域与RegionId对应表

      公网

      -Dproject.name=<AppName> -Dahas.namespace=default -Dahas.regionId=cn-public -Dahas.license=<license>  -javaagent:/opt/aliyunahas/agent/ahas-java-agent.jar
      说明
      • 将<AppName>替换为自定义的应用名称,将<license>替换为真实值,/opt/aliyunahas/agent/ahas-java-agent.jar是ahas-java-agent.jar的下载路径,请替换为实际路径。

      • 将<RegionId>替换应用所在地域,地域与RegionId对应表请参见下文地域与RegionId对应表

    3. 启动JVM。

说明
  • Agent接入配置URL收敛:通过启动参数-Dcsp.sentinel.url.clean.config.path配置文件路径,默认路径为jar包路径下的ahas-sentinel-url-clean.properties文件。支持classpath形式,如-Dcsp.sentinel.url.clean.config.path=classpath:ahas-sentinel-url-clean.properties

  • Properties文件的格式:匹配前缀等于清理后的资源名称。

  • 目前仅支持前缀匹配模式。如以下示例的配置会针对/payment/ 开头的URL,将它们归一成/payment/*/payment/=/payment/*

结果验证

登录AHAS控制台,在左侧导航栏选择流量防护 > 应用防护,若在应用防护页面出现该应用的资源卡片且有数据上报,则说明接入成功。

应用防护.png

地域与RegionId对应表

地域

RegionId

公网

cn-public

华东1(杭州)

cn-hangzhou

华东2(上海)

cn-shanghai

华北2(北京)

cn-beijing

华北3(张家口)

cn-zhangjiakou

华南1(深圳)

cn-shenzhen

新加坡

ap-southeast-1

德国(法兰克福)

eu-central-1

常见问题

如果您已完成应用防护服务接入,应用防护页面仍查看不到您的应用,请参见应用防护常见问题