故障注入

故障注入配置概述

Configuration

  1. {
  2. "name" : "fault",
  3. "config" : {
  4. "abort" : "{...}",
  5. "delay" : "{...}",
  6. "upstream_cluster" : "...",
  7. "headers" : [],
  8. "downstream_nodes" : []
  9. }
  10. }
  • abort
    (sometimes required, object) 如果指定,过滤器将根据对象中的值中止请求。必须指定至少abortdelay

  • delay
    (sometimes required, object) 如果指定,过滤器将根据对象中的值注入延迟。必须指定至少abortdelay

  • upstream_cluster
    (optional, string) 指定过滤器应匹配的(目标)上游群集的名称。故障注入将限于绑定到特定上游群集的请求。

  • headers
    (optional, array) 指定过滤器应匹配的一组标题。故障注入过滤器可以选择一组头相匹配的请求,应用该故障注入。实际故障注入的机会进一步取决于abort_percentfixed_delay_percent参数的值。过滤器会根据配置中的所指定头部,来检查请求的头。如果配置中的所有头都存在于具有相同值的请求中(或者如果没有配置value字段,则认为存在),则匹配将发生。

  • downstream_nodes
    (optional, array) 针对指定的下游主机列表,注入故障。如果未设置此设置,则会为所有下游节点注入故障。下游节点名称取自HTTP x-envoy-downstream-service-node头,并与downstream_nodes`列表进行比较。

Abort

  1. {
  2. "abort_percent" : "...",
  3. "http_status" : "..."
  4. }
  • abort_percent
    (required, integer) 使用指定的http_status代码中止请求的百分比。有效值范围从0到100。

  • http_status
    (required, integer) 将被用作中止请求的响应码,即HTTP状态代码。

Delay

  1. {
  2. "type" : "...",
  3. "fixed_delay_percent" : "...",
  4. "fixed_duration_ms" : "..."
  5. }
  • type
    (required, string) 指定被注入的延迟类型。目前只支持fixed延迟类型(step function)。

  • fixed_delay_percent
    (required, integer) 将在fixed_duration_ms指定的时间内延迟的请求的百分比。有效值范围从0到100。

  • fixed_duration_ms
    (required, integer) 延迟时间,以毫秒为单位。必须大于0。

返回