11.5.5. 配置 Periodic 大小轮转日志处理程序

本节介绍如何使用管理 CLI 配置定期大小轮转日志处理程序。您还可以通过使用管理控制台配置定期大小日志处理程序,导航到 ConfigurationSubsystemsLoggingConfiguration,点 View,然后选择 HandlerPeriodic Size Handler

用于配置定期大小日志处理器的主要任务有:

重要

如果您要为日志记录配置集配置此日志处理程序,则命令的开头为 /subsystem=logging/logging-profile=LOGGING_PROFILE_NAME/ 而不是 /subsystem=logging/

此外,如果您在受管域中运行,请在命令前加上 /profile=PROFILE_NAME

添加定期大小日志处理程序

在添加定期大小日志处理程序时,您必须使用 file 属性指定文件路径,该属性由 path 和 relative -to 属性组成。使用 path 属性设置日志的文件路径,包括名称,如 my-log.log。(可选)使用 relative-to 属性设置 路径 相对于指定路径,如 jboss.server.log.dir

您还必须使用 suffix 属性为轮转日志设置后缀。这的格式必须可以被 java.text.SimpleDateFormat(.yyyyyy-MM-dd-HH) 理解。轮转期间会基于此后缀自动计算。

/subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:add(file={path=FILE_PATH,relative-to=RELATIVE_TO_PATH},suffix=SUFFIX)
配置定期大小日志处理程序设置

根据您的需要,您可能需要设置以下一个或多个定期大小日志处理程序属性:有关可用定期大小日志处理程序属性及其描述的完整列表,请参阅 Periodic Sandler Attributes

  • 设置日志级别。

    为处理程序设置适当的日志级别。默认值为 ALL有关所有可用选项,请参阅日志级别

    /subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=level,value=LEVEL)
  • 设置轮转大小。

    设置在轮转之前文件能够达到的最大大小。默认值为 2m (2 MB)。

    /subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=rotate-size, value=ROTATE_SIZE)
  • 设置要保留的最大备份日志数。

    设置要保留的备份数。默认值为 1

    /subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=max-backup-index, value=MAX_BACKUPS)
  • 设置是否在引导时轮转日志。

    默认情况下,服务器重启时不会创建新的日志文件。您可以将此项设置为 true,以在服务器重启时轮转日志。

    /subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=rotate-on-boot, value=ROTATE_ON_BOOT)
  • 设置附加行为。

    默认情况下,JBoss EAP 将在服务器重启时将日志消息附加到同一文件中。您可以将 append 属性设置为 false,使其在服务器重启时覆盖文件。

    /subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=append,value=APPEND)
  • 设置编码.

    设置处理程序的编码,如 utf-8

    /subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=encoding,value=ENCODING)
  • 设置日志格式器。

    设置处理程序的格式字符串。例如,默认格式字符串为 %d{HH:mm:ss,SSS} %-5p [%c](%t)%s%e%n。务必在引号中包含 FORMAT 值。

    /subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=formatter,value=FORMAT)
    注意
  • 设置自动刷新.

    设置是否在每次写入后自动清空。默认值为 true

    /subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=autoflush,value=AUTO_FLUSH)
  • 设置过滤器表达式。

    设置表达式,以过滤处理程序的日志消息。务必用引号转义任何逗号和引号。例如,对于过滤器表达式 not (match("WFLY"),需要将以下 FILTER_EXPRESSION 可替换变量替换为"not(match(\" WFLY\")"。

    /subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=filter-spec, value=FILTER_EXPRESSION)

    有关可用过滤器表达式的更多信息,请参阅 Filter Expressions 部分。

将 Periodic Size Log Handler 分配给日志记录器

要激活日志处理程序,您必须将其分配到日志记录器。

以下管理 CLI 命令将定期大小日志处理程序分配给根日志记录器:

/subsystem=logging/root-logger=ROOT:add-handler(name=PERIODIC_SIZE_HANDLER_NAME)

以下管理 CLI 命令将定期大小日志处理程序分配给由 CATEGORY 指定名称的日志记录器:

/subsystem=logging/logger=CATEGORY:add-handler(name=PERIODIC_SIZE_HANDLER_NAME)
删除定期大小日志处理程序

可以使用 remove 操作移除日志处理程序。如果当前分配给日志记录器或异步日志处理程序,则无法移除日志处理程序。

/subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:remove