11.3.6. filter Expressions

使用 filter-spec 属性配置的过滤器表达式用于根据各种条件记录日志消息。过滤器检查始终在原始未格式化的消息上完成。您可以为日志记录器或处理程序包含过滤器,但日志记录器过滤器优先于处理程序上放置的过滤器。

注意

为根日志记录器指定的 filter-spec 不会被其他日志记录器继承。相反,每个处理程序都必须指定 filter-spec

表 11.3. Logging 的 filter Expressions

filter Expression描述

accept

接受所有日志消息。

deny

拒绝所有日志消息。

不 [filter 表达式]

返回单个过滤器表达式倒置的值。例如:

not(match("WFLY"))

all[filter 表达式]

从以逗号分隔的过滤器表达式列表中返回串联值。例如:

all(match("WFLY"),match("WELD"))

任意[filter 表达式]

从以逗号分隔的过滤器表达式列表中返回一个值。例如:

any(match("WFLY"),match("WELD"))

levelChange[level]

使用指定的级别更新日志记录。例如:

levelChange(WARN)

levels[levels]

使用逗号分隔级别列表中列出的级别过滤日志消息。例如:

级别(DEBUG、INFO、WARN、ERROR)

levelRange[minLevel,maxLevel]

过滤指定级别的日志消息。[] 字符用于表示包含的级别。 字符用于表示专用级别。例如:

  • levelRange[INFO,ERROR]

    • 最小级别必须大于或等于 INFO,最高级别必须小于或等于 ERROR
  • levelRange[DEBUG,ERROR)

    • 最小级别必须大于或等于 DEBUG,最高级别必须小于 ERROR

match["pattern"]

使用提供的正则表达式过滤日志消息。例如:

match("WFLY\d+")

substitute["pattern","replacement value"]

使用替换文本(第二个参数)替换第一个匹配模式的过滤器(第一个参数)。例如:

substitute("WFLY","EAP")

substituteAll["pattern","replacement value"]

将模式的所有匹配项(第一个参数)替换为替换文本(第二个参数)的过滤器。例如:

substituteAll("WFLY","EAP")

注意

在使用管理 CLI 配置过滤器表达式时,请确保在过滤器文本中转义逗号和引号,以便该值作为字符串正确处理。您必须在逗号和引号前加上反斜杠(\),并将整个表达式括在引号中。以下是正确转义 replace All("WFLY","YLFW"的示例

/subsystem=logging/console-handler=CONSOLE:write-attribute(name=filter-spec, value="substituteAll(\"WFLY\"\,\"YLFW\")")