本文整理汇总了Java中ch.qos.logback.classic.AsyncAppender.setContext方法的典型用法代码示例。如果您正苦于以下问题:Java AsyncAppender.setContext方法的具体用法?Java AsyncAppender.setContext怎么用?Java AsyncAppender.setContext使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ch.qos.logback.classic.AsyncAppender
的用法示例。
在下文中一共展示了AsyncAppender.setContext方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: addLogstashAppender
import ch.qos.logback.classic.AsyncAppender; //导入方法依赖的package包/类
public void addLogstashAppender() {
log.info("Initializing Logstash logging");
LogstashSocketAppender logstashAppender = new LogstashSocketAppender();
logstashAppender.setName("LOGSTASH");
logstashAppender.setContext(context);
String customFields = "{\"app_name\":\"" + appName + "\",\"app_port\":\"" + serverPort + "\"," +
"\"instance_id\":\"" + instanceId + "\"}";
// Set the Logstash appender config from JHipster properties
logstashAppender.setSyslogHost(jHipsterProperties.getLogging().getLogstash().getHost());
logstashAppender.setPort(jHipsterProperties.getLogging().getLogstash().getPort());
logstashAppender.setCustomFields(customFields);
logstashAppender.start();
// Wrap the appender in an Async appender for performance
AsyncAppender asyncLogstashAppender = new AsyncAppender();
asyncLogstashAppender.setContext(context);
asyncLogstashAppender.setName("ASYNC_LOGSTASH");
asyncLogstashAppender.setQueueSize(jHipsterProperties.getLogging().getLogstash().getQueueSize());
asyncLogstashAppender.addAppender(logstashAppender);
asyncLogstashAppender.start();
context.getLogger("ROOT").addAppender(asyncLogstashAppender);
}
示例2: setupFileLogging
import ch.qos.logback.classic.AsyncAppender; //导入方法依赖的package包/类
private static void setupFileLogging(Logger root, ThresholdFilter filter, String logfilePath) {
MinimalLayout formatter = new MinimalLayout(root.getLoggerContext());
formatter.start();
// setup the file appender
FileAppender<ILoggingEvent> appender = new FileAppender<>();
appender.setFile(logfilePath);
appender.setContext(root.getLoggerContext());
appender.setLayout(formatter);
appender.start();
// wrap it in an async appender
final AsyncAppender asyncAppender = new AsyncAppender();
asyncAppender.setContext(root.getLoggerContext());
asyncAppender.addAppender(appender);
asyncAppender.addFilter(filter);
asyncAppender.start();
// now, add it to the root logger
root.addAppender(asyncAppender);
}
示例3: addLogstashAppender
import ch.qos.logback.classic.AsyncAppender; //导入方法依赖的package包/类
public void addLogstashAppender(LoggerContext context) {
log.info("Initializing Logstash logging");
LogstashSocketAppender logstashAppender = new LogstashSocketAppender();
logstashAppender.setName("LOGSTASH");
logstashAppender.setContext(context);
String customFields = "{\"app_name\":\"" + appName + "\",\"app_port\":\"" + serverPort + "\"," +
"\"instance_id\":\"" + instanceId + "\"}";
// Set the Logstash appender config from JHipster properties
logstashAppender.setSyslogHost(jHipsterProperties.getLogging().getLogstash().getHost());
logstashAppender.setPort(jHipsterProperties.getLogging().getLogstash().getPort());
logstashAppender.setCustomFields(customFields);
// Limit the maximum length of the forwarded stacktrace so that it won't exceed the 8KB UDP limit of logstash
ShortenedThrowableConverter throwableConverter = new ShortenedThrowableConverter();
throwableConverter.setMaxLength(7500);
throwableConverter.setRootCauseFirst(true);
logstashAppender.setThrowableConverter(throwableConverter);
logstashAppender.start();
// Wrap the appender in an Async appender for performance
AsyncAppender asyncLogstashAppender = new AsyncAppender();
asyncLogstashAppender.setContext(context);
asyncLogstashAppender.setName("ASYNC_LOGSTASH");
asyncLogstashAppender.setQueueSize(jHipsterProperties.getLogging().getLogstash().getQueueSize());
asyncLogstashAppender.addAppender(logstashAppender);
asyncLogstashAppender.start();
context.getLogger("ROOT").addAppender(asyncLogstashAppender);
}
示例4: addLogstashAppender
import ch.qos.logback.classic.AsyncAppender; //导入方法依赖的package包/类
public void addLogstashAppender(LoggerContext context) {
log.info("Initializing Logstash logging");
LogstashSocketAppender logstashAppender = new LogstashSocketAppender();
logstashAppender.setName("LOGSTASH");
logstashAppender.setContext(context);
String customFields = "{\"app_name\":\"" + appName + "\",\"app_port\":\"" + serverPort + "\"}";
// Set the Logstash appender config from JHipster properties
logstashAppender.setSyslogHost(jHipsterProperties.getLogging().getLogstash().getHost());
logstashAppender.setPort(jHipsterProperties.getLogging().getLogstash().getPort());
logstashAppender.setCustomFields(customFields);
// Limit the maximum length of the forwarded stacktrace so that it won't exceed the 8KB UDP limit of logstash
ShortenedThrowableConverter throwableConverter = new ShortenedThrowableConverter();
throwableConverter.setMaxLength(7500);
throwableConverter.setRootCauseFirst(true);
logstashAppender.setThrowableConverter(throwableConverter);
logstashAppender.start();
// Wrap the appender in an Async appender for performance
AsyncAppender asyncLogstashAppender = new AsyncAppender();
asyncLogstashAppender.setContext(context);
asyncLogstashAppender.setName("ASYNC_LOGSTASH");
asyncLogstashAppender.setQueueSize(jHipsterProperties.getLogging().getLogstash().getQueueSize());
asyncLogstashAppender.addAppender(logstashAppender);
asyncLogstashAppender.start();
context.getLogger("ROOT").addAppender(asyncLogstashAppender);
}
示例5: addLogstashAppender
import ch.qos.logback.classic.AsyncAppender; //导入方法依赖的package包/类
private static void addLogstashAppender(LoggerContext context, XmLogstashConfig config) {
LOGGER.info("Initializing Logstash logging");
LogstashSocketAppender logstashAppender = new LogstashSocketAppender();
logstashAppender.setName("LOGSTASH");
logstashAppender.setContext(context);
String customFields = "{\"app_name\":\"" + config.getAppName() + "\",\"app_port\":\"" + config.getAppPort()
+ "\",\"instance_id\":\"" + config.getInstanceId() + "\"}";
// Set the Logstash appender config from JHipster properties
logstashAppender.setSyslogHost(config.getLogstashHost());
logstashAppender.setPort(config.getLogstashPort());
logstashAppender.setCustomFields(customFields);
// Limit the maximum length of the forwarded stacktrace so that it won't exceed the 8KB UDP limit of logstash
ShortenedThrowableConverter throwableConverter = new ShortenedThrowableConverter();
throwableConverter.setMaxLength(7500);
throwableConverter.setRootCauseFirst(true);
logstashAppender.setThrowableConverter(throwableConverter);
logstashAppender.start();
// Wrap the appender in an Async appender for performance
AsyncAppender asyncLogstashAppender = new AsyncAppender();
asyncLogstashAppender.setContext(context);
asyncLogstashAppender.setName("ASYNC_LOGSTASH");
asyncLogstashAppender.setQueueSize(config.getLogstashQueueSize());
asyncLogstashAppender.addAppender(logstashAppender);
asyncLogstashAppender.start();
context.getLogger("ROOT").addAppender(asyncLogstashAppender);
}
示例6: addLogstashAppender
import ch.qos.logback.classic.AsyncAppender; //导入方法依赖的package包/类
private void addLogstashAppender(LoggerContext context) {
log.info("Initializing Logstash logging");
LogstashTcpSocketAppender logstashAppender = new LogstashTcpSocketAppender();
logstashAppender.setName(LOGSTASH_APPENDER_NAME);
logstashAppender.setContext(context);
String customFields = "{\"app_name\":\"" + appName + "\",\"app_port\":\"" + serverPort + "\"}";
// More documentation is available at: https://github.com/logstash/logstash-logback-encoder
LogstashEncoder logstashEncoder=new LogstashEncoder();
// Set the Logstash appender config from JHipster properties
logstashEncoder.setCustomFields(customFields);
// Set the Logstash appender config from JHipster properties
logstashAppender.addDestinations(new InetSocketAddress(jHipsterProperties.getLogging().getLogstash().getHost(),jHipsterProperties.getLogging().getLogstash().getPort()));
ShortenedThrowableConverter throwableConverter = new ShortenedThrowableConverter();
throwableConverter.setRootCauseFirst(true);
logstashEncoder.setThrowableConverter(throwableConverter);
logstashEncoder.setCustomFields(customFields);
logstashAppender.setEncoder(logstashEncoder);
logstashAppender.start();
// Wrap the appender in an Async appender for performance
AsyncAppender asyncLogstashAppender = new AsyncAppender();
asyncLogstashAppender.setContext(context);
asyncLogstashAppender.setName(ASYNC_LOGSTASH_APPENDER_NAME);
asyncLogstashAppender.setQueueSize(jHipsterProperties.getLogging().getLogstash().getQueueSize());
asyncLogstashAppender.addAppender(logstashAppender);
asyncLogstashAppender.start();
context.getLogger("ROOT").addAppender(asyncLogstashAppender);
}
示例7: addLogstashAppender
import ch.qos.logback.classic.AsyncAppender; //导入方法依赖的package包/类
public void addLogstashAppender() {
log.info("Initializing Logstash logging");
LogstashSocketAppender logstashAppender = new LogstashSocketAppender();
logstashAppender.setName("LOGSTASH");
logstashAppender.setContext(context);
String customFields = "{\"app_name\":\"" + appName + "\",\"app_port\":\"" + serverPort + "\"}";
// Set the Logstash appender config from JHipster properties
logstashAppender.setSyslogHost(jHipsterProperties.getLogging().getLogstash().getHost());
logstashAppender.setPort(jHipsterProperties.getLogging().getLogstash().getPort());
logstashAppender.setCustomFields(customFields);
// Limit the maximum length of the forwarded stacktrace so that it won't exceed the 8KB UDP limit of logstash
ShortenedThrowableConverter throwableConverter = new ShortenedThrowableConverter();
throwableConverter.setMaxLength(7500);
throwableConverter.setRootCauseFirst(true);
logstashAppender.setThrowableConverter(throwableConverter);
logstashAppender.start();
// Wrap the appender in an Async appender for performance
AsyncAppender asyncLogstashAppender = new AsyncAppender();
asyncLogstashAppender.setContext(context);
asyncLogstashAppender.setName("ASYNC_LOGSTASH");
asyncLogstashAppender.setQueueSize(jHipsterProperties.getLogging().getLogstash().getQueueSize());
asyncLogstashAppender.addAppender(logstashAppender);
asyncLogstashAppender.start();
context.getLogger("ROOT").addAppender(asyncLogstashAppender);
}
示例8: addLogstashAppender
import ch.qos.logback.classic.AsyncAppender; //导入方法依赖的package包/类
public void addLogstashAppender() {
log.info("Initializing Logstash logging");
LogstashSocketAppender logstashAppender = new LogstashSocketAppender();
logstashAppender.setName("LOGSTASH");
logstashAppender.setContext(context);
String customFields = "{\"app_name\":\"" + appName + "\",\"app_port\":\"" + serverPort + "\"," +
"\"instance_id\":\"" + instanceId + "\"}";
// Set the Logstash appender config from JHipster properties
logstashAppender.setSyslogHost(jHipsterProperties.getLogging().getLogstash().getHost());
logstashAppender.setPort(jHipsterProperties.getLogging().getLogstash().getPort());
logstashAppender.setCustomFields(customFields);
// Limit the maximum length of the forwarded stacktrace so that it won't exceed the 8KB UDP limit of logstash
ShortenedThrowableConverter throwableConverter = new ShortenedThrowableConverter();
throwableConverter.setMaxLength(7500);
throwableConverter.setRootCauseFirst(true);
logstashAppender.setThrowableConverter(throwableConverter);
logstashAppender.start();
// Wrap the appender in an Async appender for performance
AsyncAppender asyncLogstashAppender = new AsyncAppender();
asyncLogstashAppender.setContext(context);
asyncLogstashAppender.setName("ASYNC_LOGSTASH");
asyncLogstashAppender.setQueueSize(jHipsterProperties.getLogging().getLogstash().getQueueSize());
asyncLogstashAppender.addAppender(logstashAppender);
asyncLogstashAppender.start();
context.getLogger("ROOT").addAppender(asyncLogstashAppender);
}
示例9: addLogstashAppender
import ch.qos.logback.classic.AsyncAppender; //导入方法依赖的package包/类
private void addLogstashAppender(LoggerContext context) {
log.info("Initializing Logstash logging");
LogstashTcpSocketAppender logstashAppender = new LogstashTcpSocketAppender();
logstashAppender.setName("LOGSTASH");
logstashAppender.setContext(context);
String customFields = "{\"app_name\":\"" + appName + "\",\"app_port\":\"" + serverPort + "\"}";
// More documentation is available at: https://github.com/logstash/logstash-logback-encoder
LogstashEncoder logstashEncoder=new LogstashEncoder();
// Set the Logstash appender config from JHipster properties
logstashEncoder.setCustomFields(customFields);
// Set the Logstash appender config from JHipster properties
logstashAppender.addDestinations(new InetSocketAddress(jHipsterProperties.getLogging().getLogstash().getHost(),jHipsterProperties.getLogging().getLogstash().getPort()));
ShortenedThrowableConverter throwableConverter = new ShortenedThrowableConverter();
throwableConverter.setRootCauseFirst(true);
logstashEncoder.setThrowableConverter(throwableConverter);
logstashEncoder.setCustomFields(customFields);
logstashAppender.setEncoder(logstashEncoder);
logstashAppender.start();
// Wrap the appender in an Async appender for performance
AsyncAppender asyncLogstashAppender = new AsyncAppender();
asyncLogstashAppender.setContext(context);
asyncLogstashAppender.setName("ASYNC_LOGSTASH");
asyncLogstashAppender.setQueueSize(jHipsterProperties.getLogging().getLogstash().getQueueSize());
asyncLogstashAppender.addAppender(logstashAppender);
asyncLogstashAppender.start();
context.getLogger("ROOT").addAppender(asyncLogstashAppender);
}
示例10: addLogstashAppender
import ch.qos.logback.classic.AsyncAppender; //导入方法依赖的package包/类
public void addLogstashAppender() {
log.info("Initializing Logstash logging");
LogstashSocketAppender logstashAppender = new LogstashSocketAppender();
logstashAppender.setName("LOGSTASH");
logstashAppender.setContext(context);
String customFields = "{\"app_name\":\"" + appName + "\",\"app_port\":\"" + serverPort + "\"}";
// Set the Logstash appender config from JHipster properties
logstashAppender.setSyslogHost(jHipsterProperties.getLogging().getLogstash().getHost());
logstashAppender.setPort(jHipsterProperties.getLogging().getLogstash().getPort());
logstashAppender.setCustomFields(customFields);
// Limit the maximum length of the forwarded stacktrace so that it won't exceed the 8KB UDP limit of logstash
ShortenedThrowableConverter throwableConverter = new ShortenedThrowableConverter();
throwableConverter.setMaxLength(7500);
throwableConverter.setRootCauseFirst(true);
logstashAppender.setThrowableConverter(throwableConverter);
logstashAppender.start();
// Wrap the appender in an Async appender for performance
AsyncAppender asyncLogstashAppender = new AsyncAppender();
asyncLogstashAppender.setContext(context);
asyncLogstashAppender.setName("ASYNC_LOGSTASH");
asyncLogstashAppender.setQueueSize(jHipsterProperties.getLogging().getLogstash().getQueueSize());
asyncLogstashAppender.addAppender(logstashAppender);
asyncLogstashAppender.start();
context.getLogger("ROOT").addAppender(asyncLogstashAppender);
}
示例11: addLogstashAppender
import ch.qos.logback.classic.AsyncAppender; //导入方法依赖的package包/类
public void addLogstashAppender(LoggerContext context) {
log.info("Initializing Logstash logging");
LogstashSocketAppender logstashAppender = new LogstashSocketAppender();
logstashAppender.setName("LOGSTASH");
logstashAppender.setContext(context);
String customFields = "{\"app_name\":\"" + appName + "\",\"app_port\":\"" + serverPort + "\"}";
// Set the Logstash appender config from JHipster properties
logstashAppender.setSyslogHost(jHipsterProperties.getLogging().getLogstash().getHost());
logstashAppender.setPort(jHipsterProperties.getLogging().getLogstash().getPort());
logstashAppender.setCustomFields(customFields);
// Limit the maximum length of the forwarded stacktrace so that it won't exceed the 8KB UDP limit of logstash
ShortenedThrowableConverter throwableConverter = new ShortenedThrowableConverter();
throwableConverter.setMaxLength(7500);
throwableConverter.setRootCauseFirst(true);
logstashAppender.setThrowableConverter(throwableConverter);
logstashAppender.start();
// Wrap the appender in an Async appender for performance
AsyncAppender asyncLogstashAppender = new AsyncAppender();
asyncLogstashAppender.setContext(context);
asyncLogstashAppender.setName("ASYNC_LOGSTASH");
asyncLogstashAppender.setQueueSize(jHipsterProperties.getLogging().getLogstash().getQueueSize());
asyncLogstashAppender.addAppender(logstashAppender);
asyncLogstashAppender.start();
context.getLogger("ROOT").addAppender(asyncLogstashAppender);
}
示例12: addLogstashAppender
import ch.qos.logback.classic.AsyncAppender; //导入方法依赖的package包/类
private void addLogstashAppender(LoggerContext context) {
log.info("Initializing Logstash logging");
LogstashTcpSocketAppender logstashAppender = new LogstashTcpSocketAppender();
logstashAppender.setName("LOGSTASH");
logstashAppender.setContext(context);
String customFields = "{\"app_name\":\"" + appName + "\",\"app_port\":\"" + serverPort + "\"," +
"\"instance_id\":\"" + eurekaInstanceConfigBean.getInstanceId() + "\"," + "\"version\":\"" + version + "\"}";
// More documentation is available at: https://github.com/logstash/logstash-logback-encoder
LogstashEncoder logstashEncoder=new LogstashEncoder();
// Set the Logstash appender config from JHipster properties
logstashEncoder.setCustomFields(customFields);
// Set the Logstash appender config from JHipster properties
logstashAppender.addDestinations(new InetSocketAddress(jHipsterProperties.getLogging().getLogstash().getHost(),jHipsterProperties.getLogging().getLogstash().getPort()));
ShortenedThrowableConverter throwableConverter = new ShortenedThrowableConverter();
throwableConverter.setRootCauseFirst(true);
logstashEncoder.setThrowableConverter(throwableConverter);
logstashEncoder.setCustomFields(customFields);
logstashAppender.setEncoder(logstashEncoder);
logstashAppender.start();
// Wrap the appender in an Async appender for performance
AsyncAppender asyncLogstashAppender = new AsyncAppender();
asyncLogstashAppender.setContext(context);
asyncLogstashAppender.setName("ASYNC_LOGSTASH");
asyncLogstashAppender.setQueueSize(jHipsterProperties.getLogging().getLogstash().getQueueSize());
asyncLogstashAppender.addAppender(logstashAppender);
asyncLogstashAppender.start();
context.getLogger("ROOT").addAppender(asyncLogstashAppender);
}
示例13: asAsync
import ch.qos.logback.classic.AsyncAppender; //导入方法依赖的package包/类
protected Appender<ILoggingEvent> asAsync(Appender<ILoggingEvent> appender, Context context) {
AsyncAppender asyncAppender = new AsyncAppender();
asyncAppender.setIncludeCallerData(false);
asyncAppender.setQueueSize(AsyncAppenderBase.DEFAULT_QUEUE_SIZE);
asyncAppender.setDiscardingThreshold(-1);
asyncAppender.setContext(context);
asyncAppender.setName(appender.getName());
asyncAppender.addAppender(appender);
asyncAppender.start();
return asyncAppender;
}
示例14: configureRotatingLogging
import ch.qos.logback.classic.AsyncAppender; //导入方法依赖的package包/类
public static void configureRotatingLogging( String baseLoggingDir, String loglevel, String appName ) {
if ( !baseLoggingDir.endsWith( "/" ) ) {
baseLoggingDir = baseLoggingDir + "/";
}
LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory();
lc.reset();
Logger rootLogger = getRootLogger( loglevel );
PatternLayoutEncoder ple = getPatternLayoutEncoder( lc );
String baseAppLoggingDir = baseLoggingDir;
// set a system property so other loggers write the correct place
System.setProperty( "krux-base-app-log-dir", baseAppLoggingDir );
try {
// Define file appender with layout and output log file name
RollingFileAppender<ILoggingEvent> fileAppender = new RollingFileAppender<ILoggingEvent>();
fileAppender.setContext( lc );
fileAppender.setName( "krux-file-appender" );
fileAppender.setFile( baseAppLoggingDir + appName + ".log" );
fileAppender.setAppend( true );
fileAppender.setEncoder( ple );
FixedWindowRollingPolicy rollingPolicy = new FixedWindowRollingPolicy();
rollingPolicy.setContext( lc );
rollingPolicy.setMinIndex( 1 );
rollingPolicy.setMaxIndex( 9 );
rollingPolicy.setFileNamePattern( baseAppLoggingDir + appName + ".%i.log.gz" );
rollingPolicy.setParent( fileAppender );
rollingPolicy.start();
SizeBasedTriggeringPolicy<ILoggingEvent> triggeringPolicy = new SizeBasedTriggeringPolicy<ILoggingEvent>( "100MB" );
triggeringPolicy.setContext( lc );
triggeringPolicy.start();
fileAppender.setRollingPolicy( rollingPolicy );
fileAppender.setTriggeringPolicy( triggeringPolicy );
fileAppender.start();
// Wrap the console appenders in an async appenders
AsyncAppender asyncOut = new AsyncAppender();
asyncOut.setContext( lc );
asyncOut.setDiscardingThreshold( 0 );
asyncOut.setQueueSize( 500 );
asyncOut.addAppender( fileAppender );
asyncOut.setName( "stdlib-async-out" );
asyncOut.start();
// Add the appender to root logger
rootLogger.addAppender( asyncOut );
// wrap stdout & stderr in log4j appenders
StdOutErrLog.tieSystemOutAndErrToLog();
} catch ( Exception e ) {
System.out.println( "Failed to add appender !!" );
e.printStackTrace();
}
}
示例15: configureStdOutLogging
import ch.qos.logback.classic.AsyncAppender; //导入方法依赖的package包/类
public static void configureStdOutLogging( String loglevel ) {
if (!(LoggerFactory.getILoggerFactory() instanceof LoggerContext)) {
System.err.println("Logger is not using logback, skipping logging configuration");
return;
}
try {
LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory();
lc.reset();
Logger rootLogger = getRootLogger( loglevel );
PatternLayoutEncoder ple = getPatternLayoutEncoder( lc );
// ops would like us to log to console unless an app
// has a specific need not to
ConsoleAppender<ILoggingEvent> stdOutAppender = new ConsoleAppender<ILoggingEvent>();
stdOutAppender.setContext( lc );
stdOutAppender.setName( "stdlib-console-out" );
stdOutAppender.setTarget( "System.out" );
stdOutAppender.setEncoder( ple );
Filter<ILoggingEvent> stdOutFilter = new StdOutFilter();
stdOutAppender.addFilter( stdOutFilter );
stdOutFilter.start();
stdOutAppender.start();
ple = getPatternLayoutEncoder( lc );
ConsoleAppender<ILoggingEvent> errorAppender = new ConsoleAppender<ILoggingEvent>();
errorAppender.setContext( lc );
errorAppender.setName( "stdlib-console-err" );
errorAppender.setTarget( "System.err" );
errorAppender.setEncoder( ple );
Filter<ILoggingEvent> stdErrFilter = new ErrOutFilter();
errorAppender.addFilter( stdErrFilter );
stdErrFilter.start();
errorAppender.start();
// Wrap the console appenders in an async appenders
AsyncAppender asyncStdOutWrapper = new AsyncAppender();
asyncStdOutWrapper.setContext( lc );
asyncStdOutWrapper.setDiscardingThreshold( 0 );
asyncStdOutWrapper.setQueueSize( 500 );
asyncStdOutWrapper.addAppender( stdOutAppender );
asyncStdOutWrapper.setName( "stdlib-async-out" );
asyncStdOutWrapper.start();
// Wrap the console appenders in an async appenders
AsyncAppender asyncStdErrWrapper = new AsyncAppender();
asyncStdErrWrapper.setContext( lc );
asyncStdErrWrapper.setDiscardingThreshold( 0 );
asyncStdErrWrapper.setQueueSize( 500 );
asyncStdErrWrapper.addAppender( errorAppender );
asyncStdErrWrapper.setName( "stdlib-async-err-2" );
asyncStdErrWrapper.start();
// Add the appenders to root logger
rootLogger.addAppender( asyncStdOutWrapper );
rootLogger.addAppender( asyncStdErrWrapper );
} catch ( Exception e ) {
System.err.println( "Failed to add appender!!" );
e.printStackTrace();
}
// wrap stdout & stderr in log4j appenders
StdOutErrLog.tieSystemOutAndErrToLog();
}