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

com.app.common.logger.AsyncLogger Maven / Gradle / Ivy

package com.app.common.logger;

import java.text.SimpleDateFormat;
import java.util.Date;

import org.slf4j.Logger;

public class AsyncLogger {

	private static boolean writeTime = false;

	public static boolean isWriteTime() {
		return writeTime;
	}

	public static void setWriteTime(boolean writeTime) {
		AsyncLogger.writeTime = writeTime;
	}

	public static void debug(Logger logger, String format, Throwable t, Object[] arguments, long time) {
		if (writeTime) {
			String timeString = formatTime(time);
			format = timeString + format;
		}
		if (arguments != null) {
			if (arguments.length == 0) {
				logger.debug(format);
			} else {
				logger.debug(format, arguments);
			}
		} else {
			logger.debug(format, t);
		}
	}

	private static String formatTime(long time) {
		SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss.SSS ");
		return sdf.format(new Date(time));
	}

	public static void info(Logger logger, String format, Throwable t, Object[] arguments, long time) {
		if (writeTime) {
			String timeString = formatTime(time);
			format = timeString + format;
		}
		if (arguments != null) {
			if (arguments.length == 0) {
				logger.info(format);
			} else {
				logger.info(format, arguments);
			}
		} else {
			logger.info(format, t);
		}
	}

	public static void warn(Logger logger, String format, Throwable t, Object[] arguments, long time) {
		if (writeTime) {
			String timeString = formatTime(time);
			format = timeString + format;
		}
		if (arguments != null) {
			if (arguments.length == 0) {
				logger.warn(format);
			} else {
				logger.warn(format, arguments);
			}
		} else {
			logger.warn(format, t);
		}
	}

	public static void error(Logger logger, String format, Throwable t, Object[] arguments, long time) {
		if (writeTime) {
			String timeString = formatTime(time);
			format = timeString + format;
		}
		if (arguments != null) {
			if (arguments.length == 0) {
				logger.error(format);
			} else {
				logger.error(format, arguments);
			}
		} else {
			logger.error(format, t);
		}
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy