正则表达式匹配器 (proto)

.xds.type.matcher.v3.RegexMatcher

[.xds.type.matcher.v3.RegexMatcher proto]

一种正则表达式匹配器,专为在处理不可信输入时保证安全性而设计。

{
  "google_re2": {...},
  "regex": ...
}
google_re2

(.xds.type.matcher.v3.RegexMatcher.GoogleRE2, REQUIRED) Google 的 RE2 正则表达式引擎。

regex

(string, REQUIRED) 正则表达式匹配字符串。字符串必须受配置的引擎支持。

.xds.type.matcher.v3.RegexMatcher.GoogleRE2

[.xds.type.matcher.v3.RegexMatcher.GoogleRE2 proto]

Google 的 RE2 正则表达式引擎。正则表达式字符串必须遵守记录的 语法。该引擎旨在以线性时间完成执行,并限制使用的内存量。

Envoy 支持通过运行时进行程序大小检查。运行时键 re2.max_program_size.error_levelre2.max_program_size.warn_level 可以设置为整数,作为编译后的正则表达式在抛出异常或记录警告之前可以具有的最大程序大小或复杂度。 re2.max_program_size.error_level 默认值为 100,如果未设置 re2.max_program_size.warn_level 则没有默认值(不会检查/记录警告)。

Envoy 发出两个统计信息来跟踪正则表达式的程序大小:直方图 re2.program_size,它记录程序大小,以及计数器 re2.exceeded_warn_level,它在程序大小超过警告级别阈值时每次递增。