11.5.9. 配置 Async 日志处理程序
本节介绍如何使用管理 CLI 配置 async 日志处理程序。您还可以通过使用管理控制台配置 async 日志处理程序,导航到 Configuration
在配置 async 日志处理程序时要执行的主要任务是:
如果您要为日志记录配置集配置此日志处理程序,则命令的开头为 /subsystem=logging/logging-profile=LOGGING_PROFILE_NAME/
而不是 /subsystem=logging/
。
此外,如果您在受管域中运行,请在命令前加上 /profile=PROFILE_NAME
。
添加 Async 日志处理程序
在添加 async 日志处理程序时,您必须指定队列长度。这是队列中可以保留的最大日志请求数。
/subsystem=logging/async-handler=ASYNC_HANDLER_NAME:add(queue-length=QUEUE_LENGTH)
添加 Sub-handler
您可以添加一个或多个处理程序作为此 async 日志处理程序的子句柄。请注意,处理程序必须已存在于配置中,否则此命令将失败。
/subsystem=logging/async-handler=ASYNC_HANDLER_NAME:add-handler(name=HANDLER_NAME)
配置 Async 日志处理程序设置
根据您的需要,您可能需要设置以下一个或多个 async 日志处理程序属性:有关可用 async 日志处理程序属性及其描述的完整列表,请参阅 Async Log Handler Attributes。
设置日志级别。
为处理程序设置适当的日志级别。默认值为
ALL
。有关所有可用选项,请参阅日志级别。/subsystem=logging/async-handler=ASYNC_HANDLER_NAME:write-attribute(name=level,value=LEVEL)
设置溢出操作。
设置溢出时要执行的操作。默认值为
BLOCK
,即当有完整队列时线程会阻止。您可以将此值更改为DISCARD
,这意味着如果已满队列,日志消息将被丢弃。/subsystem=logging/async-handler=ASYNC_HANDLER_NAME:write-attribute(name=overflow-action,value=OVERFLOW_ACTION)
设置过滤器表达式。
设置表达式,以过滤处理程序的日志消息。务必用引号转义任何逗号和引号。例如,对于过滤器表达式
not
(match("WFLY"),需要将以下
WFLY\")"。FILTER_EXPRESSION
可替换变量替换为"not(match(\"/subsystem=logging/async-handler=ASYNC_HANDLER_NAME:write-attribute(name=filter-spec, value=FILTER_EXPRESSION)
有关可用过滤器表达式的更多信息,请参阅 Filter Expressions 部分。
将 Async 日志处理程序分配给日志记录器
要激活日志处理程序,您必须将其分配到日志记录器。
以下管理 CLI 命令将 async 日志处理程序分配给根日志记录器:
/subsystem=logging/root-logger=ROOT:add-handler(name=ASYNC_HANDLER_NAME)
以下管理 CLI 命令将 async 日志处理程序分配给由 CATEGORY
指定名称的日志记录器:
/subsystem=logging/logger=CATEGORY:add-handler(name=ASYNC_HANDLER_NAME)
删除 Async 日志处理程序
可以使用 remove
操作移除日志处理程序。如果当前分配给日志记录器,则无法移除日志处理程序。
/subsystem=logging/async-handler=ASYNC_HANDLER_NAME:remove