package odin
- Alphabetic
- By Inheritance
- odin
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Package Members
Type Members
- sealed trait Level extends AnyRef
Message log level
- trait Logger[F[_]] extends AnyRef
- trait LoggerInstances extends AnyRef
- case class LoggerMessage(level: Level, message: Eval[String], context: Map[String, String], exception: Option[Throwable], position: Position, threadName: String, timestamp: Long) extends Product with Serializable
Final log message that contains all the possible information to render
Final log message that contains all the possible information to render
- level
log level of the message
- message
string message
- context
some MDC
- exception
exception if exists
- position
origin of log
- threadName
current thread name
- timestamp
Epoch time in milliseconds at the moment of log
- trait Noop extends AnyRef
Value Members
- def asyncFileLogger[F[_]](fileName: String, formatter: Formatter = Formatter.default, timeWindow: FiniteDuration = 1.second, maxBufferSize: Option[Int] = None, minLevel: Level = Level.Trace, openOptions: Seq[OpenOption] = Seq.empty)(implicit arg0: Concurrent[F], arg1: Timer[F], arg2: ContextShift[F]): Resource[F, Logger[F]]
Create async logger with safe log file allocation and intermediate async buffer
Create async logger with safe log file allocation and intermediate async buffer
- fileName
name of log file to append to
- formatter
formatter to use
- timeWindow
pause between async buffer flushing
- maxBufferSize
maximum buffer size
- minLevel
minimal level of logs to be printed
- def asyncRollingFileLogger[F[_]](fileNamePattern: (LocalDateTime) => String, rolloverInterval: Option[FiniteDuration], maxFileSizeInBytes: Option[Long], timeWindow: FiniteDuration = 1.second, maxBufferSize: Option[Int] = None, formatter: Formatter = Formatter.default, minLevel: Level = Level.Trace, openOptions: Seq[OpenOption] = Seq.empty)(implicit arg0: Concurrent[F], arg1: Timer[F], arg2: ContextShift[F]): Resource[F, Logger[F]]
Same as rollingFileLogger but with intermediate async buffer
Same as rollingFileLogger but with intermediate async buffer
- fileNamePattern
function that provides a path to a log file given a current local datetime
- rolloverInterval
interval for rollover. When set, new log file is created each time interval is over
- maxFileSizeInBytes
max size of log file. When set, new log file is created each time the current log file size exceeds the setting
- timeWindow
pause between async buffer flushing
- maxBufferSize
maximum buffer size
- formatter
formatter to use
- minLevel
minimal level of logs to be printed
- def consoleLogger[F[_]](formatter: Formatter = Formatter.default, minLevel: Level = Level.Trace)(implicit arg0: Sync[F], arg1: Clock[F]): Logger[F]
Basic console logger that prints to STDOUT & STDERR
Basic console logger that prints to STDOUT & STDERR
- formatter
formatter to use for log messages
- minLevel
minimal level of logs to be printed
- def fileLogger[F[_]](fileName: String, formatter: Formatter = Formatter.default, minLevel: Level = Level.Trace, openOptions: Seq[OpenOption] = Seq.empty)(implicit arg0: Sync[F], arg1: Clock[F]): Resource[F, Logger[F]]
Create logger with safe log file allocation suspended inside of
Resource
Create logger with safe log file allocation suspended inside of
Resource
- fileName
name of log file to append to
- formatter
formatter to use
- minLevel
minimal level of logs to be printed
- def rollingFileLogger[F[_]](fileNamePattern: (LocalDateTime) => String, rolloverInterval: Option[FiniteDuration], maxFileSizeInBytes: Option[Long], formatter: Formatter = Formatter.default, minLevel: Level = Level.Trace, openOptions: Seq[OpenOption] = Seq.empty)(implicit arg0: Concurrent[F], arg1: Timer[F], arg2: ContextShift[F]): Resource[F, Logger[F]]
Create logger with safe log files allocation suspended inside of
Resource
Create logger with safe log files allocation suspended inside of
Resource
Log files are rotated according to
rolloverInterval
andmaxFileSizeInBytes
parameters. Whenever a log file satisfies at least one of the set requirements, next file is created.Name of each log file is prefixed with
fileNamePrefix
and the current local datetime in format of yyyy-MM-dd-HH-mm-ss is appended to the prefix.In case if none of the options are set, rotation never happens and a single file is used.
- fileNamePattern
function that provides a path to a log file given a current local datetime
- rolloverInterval
interval for rollover. When set, new log file is created each time interval is over
- maxFileSizeInBytes
max size of log file. When set, new log file is created each time the current log file size exceeds the setting
- formatter
formatter to use
- minLevel
minimal level of logs to be printed
- object Level
- object Logger extends Noop with LoggerInstances