All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.alexecollins.docker.util.MavenLogAppender Maven / Gradle / Ivy

There is a newer version: 2.11.24
Show newest version
package com.alexecollins.docker.util;

import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.core.AppenderBase;
import org.apache.maven.plugin.logging.Log;
import org.slf4j.bridge.SLF4JBridgeHandler;

import java.util.logging.LogManager;
import java.util.logging.Logger;

import static ch.qos.logback.classic.Level.*;

public class MavenLogAppender extends AppenderBase {

	@SuppressWarnings("FieldCanBeLocal")
	private static Log LOG;

	static {
		LogManager.getLogManager().reset();
		SLF4JBridgeHandler.install();
		Logger.getLogger("global").setLevel(java.util.logging.Level.FINEST);
	}

	public static void setLog(Log log) {
		MavenLogAppender.LOG = log;
	}

	@Override
	protected void append(ILoggingEvent eventObject) {
		if (eventObject.getLevel().isGreaterOrEqual(ERROR)) {
			LOG.error(eventObject.getMessage());
		} else if (eventObject.getLevel().isGreaterOrEqual(WARN)) {
			LOG.warn(eventObject.getMessage());
		} else if (eventObject.getLevel().isGreaterOrEqual(INFO)) {
			LOG.info(eventObject.getMessage());
		} else {
			LOG.debug(eventObject.getMessage());
		}
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy