更新时间:2025-08-15 GMT+08:00

BreakerContent

表1 BreakerContent

参数

是否必选

参数类型

描述

scope

String

断路器策略的类型。支持的取值:

  • basic:基础,表示绑定到断路器插件的每个API各自计算断路器策略
  • share:共享,表示绑定到断路器插件的所有API共享断路器策略

breaker_condition

PluginBreakerCondition object

断路器插件判断条件内容对象。

downgrade_default

PluginBreakerDowngradeInfo object

断路器插件降级后端内容定义对象。

downgrade_parameters

Array of PluginCommonParameter objects

断路器规则使用的参数列表。

downgrade_rules

Array of PluginBreakerDowngradeRule objects

断路器插件降级规则列表。

表2 PluginBreakerDowngradeRule

参数

是否必选

参数类型

描述

rule_name

String

断路器规则名称。

match_regex

String

断路器规则表达式。详情参看规则表达式说明。

breaker_condition

PluginBreakerCondition object

断路器插件判断条件内容对象。

downgrade_backend

PluginBreakerDowngradeInfo object

断路器插件降级后端内容定义对象。

parameters

Array of PluginCommonParameter objects

断路器规则使用的参数列表。

表3 PluginBreakerCondition

参数

是否必选

参数类型

描述

breaker_type

String

断路器类型。支持的取值:

  • timeout:按后端超时的断路器
  • condition:按后端匹配条件判断的断路器

breaker_mode

String

断路器条件模式。支持的取值:

  • counter:计数器模式
  • percentage:百分比模式

unhealthy_condition

String

规则表达式。详情参看规则表达式说明。

unhealthy_threshold

Integer

触发不健康条件的请求次数,使用breaker_modecounter时,必填。

min_call_threshold

Integer

触发的最小调用次数,使用breaker_modepercentage时,必填。

unhealthy_percentage

Integer

触发断路的不健康条件最小百分比,使用breaker_modepercentage时,必填。

time_window

Integer

判断不健康次数的时间窗口,单位为秒。

open_breaker_time

Integer

断路器打开的持续时间,单位为秒。

表4 PluginBreakerDowngradeInfo

参数

是否必选

参数类型

描述

type

String

熔断降级类型,支持http、http_vpc、function、mock、passthrough。支持的取值:

  • http:http请求到后端
  • http_vpc:http请求负载到后端
  • function:函数类型后端
  • mock:Mock类型后端
  • passthrough:添加透传参数到后端

http_info

PluginBreakerDowngradeHttpInfo object

断路器插件降级后端HTTP内容定义对象。

http_vpc_info

PluginBreakerDowngradeHttpVpcInfo object

断路器插件降级后端HTTP负载内容定义对象。

func_info

PluginBreakerDowngradeFunctionInfo object

断路器插件降级后端函数内容定义对象。

mock_info

PluginBreakerDowngradeMockInfo object

断路器插件降级后端Mock内容定义对象。

passthrough_infos

Array of PluginBreakerDowngradePassthroughInfo objects

熔断降级类型typepassthrough时,必填。

表5 PluginBreakerDowngradeHttpInfo

参数

是否必选

参数类型

描述

address

String

后端服务的地址。

由主机(IP或域名)和端口号组成,总长度不超过255。格式为主机:端口(如:apig.example.com:7443)。如果不写端口,则HTTPS默认端口号为443,HTTP默认端口号为80。

scheme

String

请求协议。支持的取值:

  • HTTP
  • HTTPS

method

String

请求方式。支持的取值:

  • GET
  • POST
  • PUT
  • DELETE
  • HEAD
  • PATCH
  • OPTIONS
  • ANY

path

String

请求地址。可以包含请求参数,用{}标识,比如/getUserInfo/{userId},支持 * / %- _ . 等特殊字符,总长度不超过512,且满足URI规范。

说明:

需要服从URI规范。

timeout

Integer

请求后端服务的超时时间。最大超时时间可通过实例特性backend_timeout配置修改,可修改的上限为600000。

单位:毫秒。

表6 PluginBreakerDowngradeHttpVpcInfo

参数

是否必选

参数类型

描述

vpc_channel_id

String

负载通道编号。

scheme

String

请求协议。支持的取值:

  • HTTP
  • HTTPS

method

String

请求方式。

path

String

请求地址。可以包含请求参数,用{}标识,比如/getUserInfo/{userId},支持 * / %- _ . 等特殊字符,总长度不超过512,且满足URI规范。

说明:

需要服从URI规范。

timeout

Integer

请求后端服务的超时时间。最大超时时间可通过实例特性backend_timeout配置修改,可修改的上限为600000。

单位:毫秒。

表7 PluginBreakerDowngradeFunctionInfo

参数

是否必选

参数类型

描述

function_urn

String

函数URN。

version

String

版本。别名和版本选择一个参数输入即可。

alias_urn

String

别名。别名和版本选择一个参数输入即可。

invocation_type

String

调用类型。支持的取值:

  • async: 异步
  • sync:同步

timeout

Integer

请求后端服务的超时时间。最大超时时间可通过实例特性backend_timeout配置修改,可修改的上限为600000。

单位:毫秒。

表8 PluginBreakerDowngradeMockInfo

参数

是否必选

参数类型

描述

status_code

String

Mock返回的HTTP状态码。支持的取值:

  • 200:OK
  • 201:Created
  • 202:Accepted
  • 203:NonAuthoritativeInformation
  • 204:NoContent
  • 205:ResetContent
  • 206:PartialContent
  • 300:MultipleChoices
  • 301:MovedPermanently
  • 302:Found
  • 303:SeeOther
  • 304:NotModified
  • 305:UseProxy
  • 306:Unused
  • 307:TemporaryRedirect
  • 400:BadRequest
  • 401:Unauthorized
  • 402:PaymentRequired
  • 403:Forbidden
  • 404:NotFound
  • 405:MethodNotAllowed
  • 406:NotAcceptable
  • 407:ProxyAuthenticationRequired
  • 408:RequestTimeout
  • 409:Conflict
  • 410:Gone
  • 411:LengthRequired
  • 412:PreconditionFailed
  • 413:RequestEntityTooLarge
  • 414:RequestURITooLong
  • 415:UnsupportedMediaType
  • 416:RequestedRangeNotSatisfiable
  • 417:ExpectationFailed
  • 450:ParameterRequried
  • 451:MethodConnectException
  • 500:InternalServerError
  • 501:NotImplemented
  • 502:BadGateway
  • 503:ServiceUnavailable
  • 504:GatewayTimeout
  • 505:HTTPVersionNotSupported

result_content

String

返回Body。

headers

Array of PluginBreakerDowngradeMockHeader objects

Mock返回响应头。

表9 PluginBreakerDowngradeMockHeader

参数

是否必选

参数类型

描述

key

String

响应头域的名称。

value

String

响应头域的值。

表10 PluginBreakerDowngradePassthroughInfo

参数

是否必选

参数类型

描述

location

String

参数位置:header、query、path。

name

String

参数名称。

字符串由英文字母、数字、中划线、下划线、英文句号组成,且只能以英文开头。

origin

String

参数类别:constant、system。

value

String

参数值。字符长度不超过255。

origin类别为constant时,此字段值为参数真正的值;

origin类别为system时,此字段值为系统参数名称,系统参数分为网关内置参数、前端认证参数和后端认证参数,当api前端安全认证方式为自定义认证时,可以填写前端认证参数,当api开启后端认证时,可以填写后端认证参数。

网关内置参数取值及对应含义:

  • $context.sourceIp:API调用者的源地址
  • $context.stage:API调用的部署环境
  • $context.apiName:API的名称
  • $context.apiId:API的ID
  • $context.appName:API调用者的APP对象名称
  • $context.appId:API调用者的APP对象ID
  • $context.requestId:当次API调用生成跟踪ID
  • $context.serverAddr:网关的服务器地址
  • $context.serverName:网关的服务器名称
  • $context.handleTime:本次API调用的处理时间
  • $context.providerAppId:API拥有者的应用对象ID,暂不支持使用

前端认证参数取值:以“$context.authorizer.frontend.”为前缀,如希望自定义认证校验通过返回的参数为aaa,那么此字段填写为$context.authorizer.frontend.aaa。

后端认证参数取值:以“$context.authorizer.backend.”为前缀,如希望自定义认证校验通过返回的参数为aaa,那么此字段填写为$context.authorizer.backend.aaa。

表11 PluginCommonParameter

参数

是否必选

参数类型

描述

type

String

参数类型。支持的取值:

  • header:HTTP头域的第一个值
  • query:QueryString的第一个值
  • path:HTTP完整请求路径
  • method:HTTP请求方法
  • system:系统参数

name

String

用于rulesparameters的参数名称。

value

String

参数来源值。