org.apache.logging.log4j.core.appender.RollingFileAppender类的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(13.0k)|赞(0)|评价(0)|浏览(163)

本文整理了Java中org.apache.logging.log4j.core.appender.RollingFileAppender类的一些代码示例,展示了RollingFileAppender类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RollingFileAppender类的具体详情如下:
包路径:org.apache.logging.log4j.core.appender.RollingFileAppender
类名称:RollingFileAppender

RollingFileAppender介绍

[英]An appender that writes to files and can roll over at intervals.
[中]一种写入文件并可以每隔一段时间滚动的追加器。

代码示例

代码示例来源:origin: apache/storm

/**
 * Given an appender name, as configured, get the parent directory of the appender's log file.
 * Note that if anything goes wrong, this will throw an Error and exit.
 */
private String logRootDir(String appenderName) {
  Appender appender = ((LoggerContext) LogManager.getContext()).getConfiguration().getAppender(appenderName);
  if (appenderName != null && appender != null && RollingFileAppender.class.isInstance(appender)) {
    return new File(((RollingFileAppender) appender).getFileName()).getParent();
  } else {
    throw new RuntimeException("Log viewer could not find configured appender, or the appender is not a FileAppender. "
        + "Please check that the appender name configured in storm and log4j agree.");
  }
}

代码示例来源:origin: alibaba/nacos

@Override
public void activateAppenderWithSizeRolling(String productName, String file, String encoding, String size,
                      int maxBackupIndex) {
  org.apache.logging.log4j.core.appender.RollingFileAppender appender = RollingFileAppender.newBuilder()
    .withName(productName + "." + file.replace(File.separatorChar, '.') + ".Appender")
    .withFileName(LoggerHelper.getLogFileP(productName, file))
    .withAppend(true)
    .withBufferedIo(true)
    .setConfiguration(configuration)
    .withFilePattern(LoggerHelper.getLogFile(productName, file) + ".%i")
    .withLayout(buildLayout(encoding))
    .withCreateOnDemand(false)
    .withPolicy(SizeBasedTriggeringPolicy.createPolicy(size))
    .withStrategy(DefaultRolloverStrategy
      .createStrategy(String.valueOf(maxBackupIndex), "1", "max", null, null, false, configuration))
    .build();
  appender.start();
  removeAllAppenders(logger);
  logger.addAppender(appender);
  setProductName(productName);
}

代码示例来源:origin: org.apache.logging.log4j/log4j-core

/**
   * Not a real test, just make sure we can compile access to the typed manager.
   *
   * @throws IOException
   */
  @Test
  public void testAccessManagerWithStrings() throws IOException {
    try (final LoggerContext ctx = LoggerContext.getContext(false)) {
      final Configuration config = ctx.getConfiguration();
      final File file = File.createTempFile("RollingFileAppenderAccessTest", ".tmp");
      file.deleteOnExit();
      final RollingFileAppender appender = RollingFileAppender.createAppender(file.getCanonicalPath(),
          "FilePattern", null, "Name", null, null, null, OnStartupTriggeringPolicy.createPolicy(1), null,
          null, null, null, null, null, config);
      final RollingFileManager manager = appender.getManager();
      // Since the RolloverStrategy and TriggeringPolicy are immutable, we could also use generics to type their
      // access.
      Assert.assertNotNull(manager.getRolloverStrategy());
      Assert.assertNotNull(manager.getTriggeringPolicy());
    }
  }
}

代码示例来源:origin: org.apache.logging.log4j/log4j-core

@Test
  public void testHostname() {
    final org.apache.logging.log4j.Logger testLogger = context.getLogger("org.apache.logging.log4j.hosttest");
    testLogger.debug("Hello, {}", "World");
    final List<String> msgs = host.getMessages();
    assertThat(msgs, hasSize(1));
    String expected = NetUtils.getLocalHostname() + Strings.LINE_SEPARATOR;
    assertThat(msgs.get(0), endsWith(expected));
    assertNotNull("No Host FileAppender file name", hostFile.getFileName());
    expected = "target/" + NetUtils.getLocalHostname() + ".log";
    String name = hostFile.getFileName();
    assertEquals("Incorrect HostFile FileAppender file name - expected " + expected + " actual - " + name, name,
      expected);
    name = hostFile.getFilePattern();
    assertNotNull("No file pattern", name);
    expected = "target/" + NetUtils.getLocalHostname() + "-%d{MM-dd-yyyy}-%i.log";
    assertEquals("Incorrect HostFile FileAppender file pattern - expected " + expected + " actual - " + name, name,
      expected);

  }
}

代码示例来源:origin: org.apache.logging.log4j/log4j-core

/**
   * Tests https://issues.apache.org/jira/browse/LOG4J2-1620
   */
  @Test
  public void testDefaultImmediateFlush() {
    Assert.assertTrue(RollingFileAppender.newBuilder().isImmediateFlush());
  }
}

代码示例来源:origin: org.mule.runtime/mule-module-launcher

private RollingFileAppender createRollingFileAppender(String logFilePath, String filePattern, String appenderName,
                           Configuration configuration) {
 TriggeringPolicy triggeringPolicy = createPolicy("1", "true");
 RolloverStrategy rolloverStrategy =
   createStrategy("30", "1", null, String.valueOf(NO_COMPRESSION), null, true, configuration);
 return RollingFileAppender.createAppender(logFilePath, logFilePath + filePattern, "true", appenderName, "true", null, null,
                      triggeringPolicy, rolloverStrategy, createLayout(configuration), null, null, null,
                      null, configuration);
}

代码示例来源:origin: org.apache.logging.log4j/log4j-core

/**
 * Not a real test, just make sure we can compile access to the typed manager.
 *
 * @throws IOException
 */
@Test
public void testAccessManagerWithBuilder() throws IOException {
  try (final LoggerContext ctx = LoggerContext.getContext(false)) {
    final Configuration config = ctx.getConfiguration();
    final File file = File.createTempFile("RollingFileAppenderAccessTest", ".tmp");
    file.deleteOnExit();
    // @formatter:off
    final RollingFileAppender appender = RollingFileAppender.newBuilder()
        .withFileName(file.getCanonicalPath())
        .withFilePattern("FilePattern")
        .withName("Name")
        .withPolicy(OnStartupTriggeringPolicy.createPolicy(1))
        .setConfiguration(config)
        .build();
    // @formatter:on
    final RollingFileManager manager = appender.getManager();
    // Since the RolloverStrategy and TriggeringPolicy are immutable, we could also use generics to type their
    // access.
    Assert.assertNotNull(manager.getRolloverStrategy());
    Assert.assertNotNull(manager.getTriggeringPolicy());
  }
}

代码示例来源:origin: org.apache.logging.log4j/log4j-core

@Test
  public void testDefaultLayout() throws Exception {
    // @formatter:off
    Assert.assertNotNull(RollingFileAppender.newBuilder()
        .withName(RollingFileAppenderLayoutTest.class.getName())
        .setConfiguration(new DefaultConfiguration())
        .withFileName("log.txt")
        .withFilePattern("FilePattern")
        .withPolicy(OnStartupTriggeringPolicy.createPolicy(1))
        .withCreateOnDemand(true) // no need to clutter up test folder with another file
        .build().getLayout());
    // @formatter:on
  }
}

代码示例来源:origin: org.apache.logging.log4j/log4j-core

final TriggeringPolicy policy = app.getManager().getTriggeringPolicy();
assertNotNull("No triggering policy", policy);
assertTrue("Incorrect policy type", policy instanceof CronTriggeringPolicy);

代码示例来源:origin: org.apache.logging.log4j/log4j-core

private void validateAppender(final LoggerContext loggerContext, final String expectedFilePattern) {
    final RollingFileAppender appender = loggerContext.getConfiguration().getAppender("fooAppender");
    Assert.assertNotNull(appender);
    Assert.assertEquals(expectedFilePattern, appender.getFilePattern());
    LogManager.getLogger("root").info("just to show it works.");
  }
}

代码示例来源:origin: org.apereo.cas/cas-server-core-logging

builder.append(FILE_PARAM, ((RollingFileAppender) appender).getFileName());
builder.append(FILE_PATTERN_PARAM, ((RollingFileAppender) appender).getFilePattern());

代码示例来源:origin: org.apache.logging.log4j/log4j-core

private void testBuilder() {
  // @formatter:off
  final RollingFileAppender raf = RollingFileAppender.newBuilder()
    .withName("test1")
    .withFileName("target/testcmd1.log")
    .withFilePattern("target/testcmd1.log.%d{yyyy-MM-dd}")
    .withPolicy(createPolicy())
    .withStrategy(createStrategy())
    .setConfiguration(configuration)
    .build();
  // @formatter:on
  Assert.assertNotNull(raf);
}

代码示例来源:origin: org.mule.munit/munit-runner

private static RollingFileAppender createRollingFileAppender(String logFilePath, String filePattern, String appenderName, Configuration configuration) {
  TriggeringPolicy triggeringPolicy = TimeBasedTriggeringPolicy.createPolicy("1", "true");
  RolloverStrategy rolloverStrategy = DefaultRolloverStrategy.createStrategy("30", "1", null, String.valueOf(Deflater.NO_COMPRESSION), configuration);
  return RollingFileAppender.createAppender(logFilePath,
      logFilePath + filePattern,
      "true",
      appenderName,
      "true",
      null, null,
      triggeringPolicy,
      rolloverStrategy,
      createLayout(configuration),
      null, null, null, null,
      configuration);
}

代码示例来源:origin: org.apache.logging.log4j/log4j-core

@Test
public void testIsCreateOnDemand() {
  final RollingFileAppender rfAppender = loggerContextRule.getRequiredAppender("RollingFile",
      RollingFileAppender.class);
  final RollingFileManager manager = rfAppender.getManager();
  Assert.assertNotNull(manager);
  Assert.assertEquals(createOnDemand, manager.isCreateOnDemand());
}

代码示例来源:origin: alibaba/nacos

@Override
public void activateAppender(String productName, String file, String encoding) {
  org.apache.logging.log4j.core.appender.RollingFileAppender appender = RollingFileAppender.newBuilder()
    .withName(productName + "." + file.replace(File.separatorChar, '.') + ".Appender")
    .withFileName(LoggerHelper.getLogFileP(productName, file))
    .withAppend(true)
    .withBufferedIo(true)
    .setConfiguration(configuration)
    .withFilePattern(LoggerHelper.getLogFile(productName, file) + ".%d{yyyy-MM-dd}")
    .withLayout(buildLayout(encoding))
    .withCreateOnDemand(false)
    .withPolicy(TimeBasedTriggeringPolicy.createPolicy("1", "true"))
    .withStrategy(DefaultRolloverStrategy.createStrategy(null, null, "nomax", null, null, false, configuration))
    .build();
  appender.start();
  removeAllAppenders(logger);
  logger.addAppender(appender);
  setProductName(productName);
}

代码示例来源:origin: apache/drill

public void localJobDebugger(int exitVal, String taskId) {
 StringBuilder sb = new StringBuilder();
 sb.append("\n");
 sb.append("Task failed!\n");
 sb.append("Task ID:\n  " + taskId + "\n\n");
 sb.append("Logs:\n");
 console.printError(sb.toString());
 for (Appender appender : ((Logger) LogManager.getRootLogger()).getAppenders().values()) {
  if (appender instanceof FileAppender) {
   console.printError(((FileAppender) appender).getFileName());
  } else if (appender instanceof RollingFileAppender) {
   console.printError(((RollingFileAppender) appender).getFileName());
  }
 }
}

代码示例来源:origin: mulesoft/mule

private RollingFileAppender createRollingFileAppender(String logFilePath, String filePattern, String appenderName,
                           Configuration configuration) {
 return RollingFileAppender.newBuilder()
   .withFileName(logFilePath)
   .withFilePattern(logFilePath + filePattern)
   .withAppend(true)
   .withName(appenderName).withBufferedIo(true)
   .withPolicy(TimeBasedTriggeringPolicy.newBuilder()
     .withInterval(getInteger(MULE_LOG_DEFAULT_POLICY_INTERVAL, 1))
     .withModulate(true)
     .build())
   .withStrategy(DefaultRolloverStrategy.newBuilder()
     .withMax(getProperty(MULE_LOG_DEFAULT_STRATEGY_MAX, "30"))
     .withMin(getProperty(MULE_LOG_DEFAULT_STRATEGY_MIN, "1"))
     .withCompressionLevelStr(String.valueOf(NO_COMPRESSION))
     .withStopCustomActionsOnError(true)
     .withConfig(configuration)
     .build())
   .withLayout(createLayout(configuration))
   .setConfiguration(configuration)
   .build();
}

代码示例来源:origin: org.mule.modules/mule-module-launcher

private RollingFileAppender createRollingFileAppender(String logFilePath, String filePattern, String appenderName, Configuration configuration)
{
  TriggeringPolicy triggeringPolicy = TimeBasedTriggeringPolicy.createPolicy("1", "true");
  RolloverStrategy rolloverStrategy = DefaultRolloverStrategy.createStrategy("30", "1", null, String.valueOf(Deflater.NO_COMPRESSION), null, true, configuration);
  return RollingFileAppender.createAppender(logFilePath,
                       logFilePath + filePattern,
                       "true",
                       appenderName,
                       "true",
                       null, null,
                       triggeringPolicy,
                       rolloverStrategy,
                       createLayout(configuration),
                       null, null, null, null,
                       configuration);
}

代码示例来源:origin: org.apache.logging.log4j/log4j-core

final TriggeringPolicy policy = app.getManager().getTriggeringPolicy();
assertNotNull("No triggering policy", policy);
assertTrue("Incorrect policy type", policy instanceof CronTriggeringPolicy);

代码示例来源:origin: alibaba/nacos

@Override
public void activateAppenderWithTimeAndSizeRolling(String productName, String file, String encoding, String size,
                          String datePattern, int maxBackupIndex) {
  org.apache.logging.log4j.core.appender.RollingFileAppender appender = RollingFileAppender.newBuilder()
    .withName(productName + "." + file.replace(File.separatorChar, '.') + ".Appender")
    .withFileName(LoggerHelper.getLogFileP(productName, file))
    .withAppend(true)
    .withBufferedIo(true)
    .setConfiguration(configuration)
    .withFilePattern(LoggerHelper.getLogFile(productName, file) + ".%d{" + datePattern + "}.%i")
    .withLayout(buildLayout(encoding))
    .withCreateOnDemand(false)
    .withPolicy(CompositeTriggeringPolicy.createPolicy(TimeBasedTriggeringPolicy.createPolicy("1", "true"),
      SizeBasedTriggeringPolicy.createPolicy(size)))
    .withStrategy(DefaultRolloverStrategy
      .createStrategy(String.valueOf(maxBackupIndex), "1", "max", null, null, false, configuration))
    .build();
  appender.start();
  removeAllAppenders(logger);
  logger.addAppender(appender);
  setProductName(productName);
}

相关文章