包含匹配条件和要执行的扩展程序的单个扩展程序链封装容器。
| JSON 表示法 | 
|---|
| { "name": string, "matchCondition": { object ( | 
| 字段 | |
|---|---|
| name | 
 必需。此扩展程序链的名称。该名称会作为 HTTP 请求日志的一部分进行记录。名称必须符合 RFC-1034 的要求,仅限使用小写字母、数字和连字符,且长度上限为 63 个字符。此外,第一个字符必须是字母,最后一个字符必须是字母或数字。 | 
| matchCondition | 
 必需。为请求调用此链的条件。 | 
| extensions[] | 
 必需。要针对匹配请求执行的一组扩展程序。必须至少选择一个扩展程序。可以为  | 
MatchCondition
为请求调用此链的条件。
| JSON 表示法 | 
|---|
| { "celExpression": string } | 
| 字段 | |
|---|---|
| celExpression | 
 必需。通用表达式语言 (CEL) 表达式,用于匹配执行扩展程序链的请求。 如需了解详情,请参阅 CEL 匹配器语言参考文档。 | 
扩展程序
链中要针对匹配请求执行的单个扩展程序。
| JSON 表示法 | 
|---|
| {
  "name": string,
  "authority": string,
  "service": string,
  "supportedEvents": [
    enum ( | 
| 字段 | |
|---|---|
| name | 
 必需。此扩展程序的名称。该名称会作为 HTTP 请求日志的一部分进行记录。名称必须符合 RFC-1034 的要求,仅限使用小写字母、数字和连字符,且长度上限为 63 个字符。此外,第一个字符必须是字母,最后一个字符必须是字母或数字。 | 
| authority | 
 可选。从 Envoy 发送到扩展程序服务的 gRPC 请求中的  | 
| service | 
 必需。对运行扩展程序的服务的引用。 目前,此处仅支持宣传信息扩展程序。 如需配置宣传信息扩展程序, | 
| supportedEvents[] | 
 可选。在请求或响应处理期间调用此扩展程序的一组事件。此字段是  | 
| timeout | 
 可选。为数据流中每一条消息指定超时时间。超时时间必须介于 10 毫秒到 1,000 毫秒之间。对于宣传信息扩展程序是必需的。 该时长以秒为单位,最多包含九个小数位,以“ | 
| failOpen | 
 可选。确定在对扩展程序的调用失败或超时时,代理的行为方式。 如果设置为  
 | 
| forwardHeaders[] | 
 可选。要转发到此扩展程序(从客户端或后端)的 HTTP 标头的列表。如果省略,则系统会发送所有标头。每个元素都是一个字符串,用于指明标头名称。 | 
EventType
调用扩展程序的请求或响应的部分。
| 枚举 | |
|---|---|
| EVENT_TYPE_UNSPECIFIED | 未指定的值。请勿使用。 | 
| REQUEST_HEADERS | 如果包含在 supportedEvents中,则在 HTTP 请求标头到达时调用该扩展程序。 | 
| REQUEST_BODY | 如果包含在 supportedEvents中,则在 HTTP 请求正文到达时调用该扩展程序。 | 
| RESPONSE_HEADERS | 如果包含在 supportedEvents中,则在 HTTP 响应标头到达时调用该扩展程序。 | 
| RESPONSE_BODY | 如果包含在 supportedEvents中,则在 HTTP 响应正文到达时调用该扩展程序。 | 
| REQUEST_TRAILERS | 如果包含在 supportedEvents中,则在 HTTP 请求尾部到达时调用该扩展程序。 | 
| RESPONSE_TRAILERS | 如果包含在 supportedEvents中,则在 HTTP 响应尾部达时调用该扩展程序。 |