onyx-log 1.2.5

Log library by D


To use this package, put the following dependency into your project's dependencies section:

dub.json
dub.sdl

onyx-log

onyx-log: the simple, fast, multithreading logging library for D.

Key features:

  • Create loggers in "logger pool" with configuration data packed to Bundle (onyx-config lib).
  • Get logger by his name.
  • Write message to logger.
  • Any work with loggers in multi-threaded environment is safety.

Examples:

Configuration text file ("./test/test.conf"):

# Logger's name. Any string value
[DebugLogger] 				

# Message level accepted by logger
# Values by priority from low to high: debug, info, warning, error, critical, fatal
level = debug			

# Appender is logger's message writer
# Values: NullAppender, ConsoleAppender, FileAppender
appender = FileAppender

# Rolling type
# Values: SizeBasedRollover
rolling = SizeBasedRollover

# Log file max size
# Values: number, number with suffix: K, M, G, T, P
maxSize = 2K

# Max number of log files
# Values: number
maxHistory = 4

# For FileAppender need path to log file and base of file name
fileName = ./log/MainDebug.log



[ErrorLogger]
level = error
appender = ConsoleAppender


Source code example:

	import onyx.log;
	import onyx.bundle;

	void main()
	{
		/* Build ConfBundle from config file */
		auto bundle = new immutable Bundle("./test/test.conf");

		/* Add loggers to "logger pool" */
		createLoggers(bundle);

		/* Get logger from "logger pool" */
		auto log = getLogger("ErrorLogger");

		/* send message to logger */
		log.error("error msg");

		auto logDebug = getLogger("DebugLogger");
		logDebug.debug_("debug msg");
		logDebug.info("info msg");
		logDebug.error("error!!!!!! msg");
	}
Authors:
Oleg Nykytenko
Dependencies:
onyx-config
Versions:
1.2.5 2017-Sep-27
1.2.4 2017-Aug-31
1.2.3 2017-Aug-31
1.2.2 2017-Aug-31
1.2.1-rc3 2016-Aug-10
Show all 18 versions
Download Stats:
  • 0 downloads today

  • 2 downloads this week

  • 11 downloads this month

  • 340 downloads total