Search in sources :

Example 1 with AsyncFileTarget

use of org.cubeengine.logscribe.target.file.AsyncFileTarget in project core by CubeEngine.

the class SpongeLogFactory method init.

public void init(ThreadFactory tf) {
    this.tf = tf;
    // configure main file logger
    AsyncFileTarget mainFileTarget = new AsyncFileTarget.Builder(LoggingUtil.getLogFile(fm, "main").toPath(), LoggingUtil.getFileFormat(true, true)).setAppend(true).setCycler(getCycler()).setThreadFactory(tf).build();
    mainFileTarget.setLevel(config.fileLevel);
    mainLogger.addTarget(mainFileTarget);
    // configure exception logger
    Log exLog = getLog(LogFactory.class, "Exceptions");
    exLog.addTarget(new AsyncFileTarget.Builder(LoggingUtil.getLogFile(fm, "Exceptions").toPath(), LoggingUtil.getFileFormat(true, false)).setAppend(true).setCycler(getCycler()).setThreadFactory(tf).build());
    // hook into Minecraft Console Logger
    ExceptionAppender exceptionAppender = new ExceptionAppender(exLog);
    exceptionAppender.start();
    ((Logger) LogManager.getLogger("Minecraft")).addAppender(exceptionAppender);
    baseTarget.getHandle().addAppender(exceptionAppender);
    if (!config.logCommands) {
        CommandLogging.disable();
    }
}
Also used : AsyncFileTarget(org.cubeengine.logscribe.target.file.AsyncFileTarget) Log(org.cubeengine.logscribe.Log) Logger(org.apache.logging.log4j.core.Logger)

Aggregations

Logger (org.apache.logging.log4j.core.Logger)1 Log (org.cubeengine.logscribe.Log)1 AsyncFileTarget (org.cubeengine.logscribe.target.file.AsyncFileTarget)1