
org.log4s.log4sjs.Log4sLoggerFactory.scala Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of log4s_sjs1_3 Show documentation
Show all versions of log4s_sjs1_3 Show documentation
High-performance SLF4J wrapper for Scala
package org.log4s
package log4sjs
import scala.scalajs.js
import org.slf4j.{ ILoggerFactory, Logger }
class Log4sLoggerFactory extends ILoggerFactory {
@inline private final def config = org.log4s.log4sjs.Log4sConfig
private[this] final class Log4sLoggerInstance private[Log4sLoggerFactory] (private[this] val name: String) extends Logger {
private[this] val path = LoggerParser(name)
override def getName() = name
protected[this] def isEnabled(level: LogLevel) = config.isPathEnabled(path, level)
protected[this] def doLog(level: LogLevel, message: String, throwable: ExceptionInfo = ExceptionInfo.NoException): Unit = {
val event = new Log4sEvent(name, path, level, message, org.slf4j.MDC.asScala(), Thread.currentThread.getName, throwable, new js.Date)
config.doLog(event)
}
override def isTraceEnabled() = isEnabled(Trace)
override def trace(message: String) = doLog(Trace, message)
override def trace(message: String, t: Throwable) = doLog(Trace, message, ExceptionInfo(t))
override def trace(message: String, e: js.Error) = doLog(Trace, message, ExceptionInfo(e))
override def isDebugEnabled() = isEnabled(Debug)
override def debug(message: String) = doLog(Debug, message)
override def debug(message: String, t: Throwable) = doLog(Debug, message, ExceptionInfo(t))
override def debug(message: String, e: js.Error) = doLog(Debug, message, ExceptionInfo(e))
override def isInfoEnabled() = isEnabled(Info)
override def info(message: String) = doLog(Info, message)
override def info(message: String, t: Throwable) = doLog(Info, message, ExceptionInfo(t))
override def info(message: String, e: js.Error) = doLog(Info, message, ExceptionInfo(e))
override def isWarnEnabled() = isEnabled(Warn)
override def warn(message: String) = doLog(Warn, message)
override def warn(message: String, t: Throwable) = doLog(Warn, message, ExceptionInfo(t))
override def warn(message: String, e: js.Error) = doLog(Warn, message, ExceptionInfo(e))
override def isErrorEnabled() = isEnabled(Error)
override def error(message: String) = doLog(Error, message)
override def error(message: String, t: Throwable) = doLog(Error, message, ExceptionInfo(t))
override def error(message: String, e: js.Error) = doLog(Error, message, ExceptionInfo(e))
}
override def getLogger(name: String): Logger = new Log4sLoggerInstance(name)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy