Java 类ch.qos.logback.core.rolling.RollingPolicy 实例源码
项目:logback-config
文件:ConfigConfigurator.java
private Appender<ILoggingEvent> configureAppender(LoggerContext loggerContext, String name, Config config)
throws ReflectiveOperationException {
List<Object> children = new ArrayList<>();
@SuppressWarnings("unchecked")
Class<Appender<ILoggingEvent>> clazz = (Class<Appender<ILoggingEvent>>) Class
.forName(config.getString("class"));
Appender<ILoggingEvent> appender = this.configureObject(loggerContext, clazz, config, children);
appender.setName(name);
for (Object child : children) {
if (child instanceof RollingPolicy) {
((RollingPolicy) child).setParent((FileAppender<?>) appender);
}
if (child instanceof LifeCycle) {
((LifeCycle) child).start();
}
}
appender.start();
return appender;
}
项目:metasfresh
文件:MetasfreshFileLoggerHelper.java
public static final MetasfreshFileLoggerHelper get(final LoggerContext context)
{
final Logger rootLogger = context.getLogger(org.slf4j.Logger.ROOT_LOGGER_NAME);
final Appender<ILoggingEvent> appender = rootLogger.getAppender(FILEAPPENDER_NAME);
if (!(appender instanceof RollingFileAppender))
{
return NULL;
}
final RollingFileAppender<?> rollingFileAppender = (RollingFileAppender<?>)appender;
final RollingPolicy rollingPolicy = rollingFileAppender.getRollingPolicy();
if (!(rollingPolicy instanceof MetasfreshTimeBasedRollingPolicy))
{
return NULL;
}
final MetasfreshTimeBasedRollingPolicy<?> metasfreshRollingPolicy = (MetasfreshTimeBasedRollingPolicy<?>)rollingPolicy;
return new MetasfreshFileLoggerHelper(rollingFileAppender, metasfreshRollingPolicy);
}
项目:bootique-logback
文件:FileAppenderFactory.java
protected FileAppender<ILoggingEvent> createRollingFileAppender(Encoder<ILoggingEvent> encoder,
LoggerContext context,
RollingPolicyFactory rollingPolicy) {
RollingFileAppender<ILoggingEvent> appender = new RollingFileAppender<>();
appender.setFile(file);
appender.setContext(context);
appender.setEncoder(encoder);
// Setup rolling policy
RollingPolicy policy = rollingPolicy.createRollingPolicy(context);
appender.setRollingPolicy(policy);
policy.setParent(appender);
// Setup triggering policy
TriggeringPolicy<ILoggingEvent> triggeringPolicy = rollingPolicy.createTriggeringPolicy(context);
if (triggeringPolicy != null) {
appender.setTriggeringPolicy(triggeringPolicy);
triggeringPolicy.start();
}
policy.start();
appender.start();
return appender;
}
项目:RotatableAppender
文件:NoopRollingPolicyTest.java
@Test
public void theActiveFileNameIsWhateverTheAppenderHas() throws Exception {
RollingPolicy policy = new NoopRollingPolicy();
policy.setParent(appender);
assertEquals(logPath, policy.getActiveFileName());
}
项目:RotatableAppender
文件:RotatableFileAppender.java
public RotatableFileAppender() {
setTriggeringPolicy(new RotationBasedTriggeringPolicy<E>());
RollingPolicy rollingPolicy = new NoopRollingPolicy();
setRollingPolicy(rollingPolicy);
rollingPolicy.setParent(this);
}
项目:bootique-logback
文件:RollingPolicyFactory.java
/**
* Creates rolling policy for rotation. This method validates rolling policy
* properties before creation policy.
*
* @param context
* a logger context
* @return a rolling policy for rotation
* @throws IllegalStateException
* if rolling policy properties are incorrect
*/
public RollingPolicy createRollingPolicy(LoggerContext context) {
getFileNamePatternValidator(context).validate();
return instantiatePolicy(context);
}
项目:bootique-logback
文件:RollingPolicyFactory.java
/**
* Instantiates rolling policy for rotation.
*
* @param context
* a logger context
* @return rolling policy for rotation
*/
protected abstract RollingPolicy instantiatePolicy(LoggerContext context);