From 6b51374bbcad3d18cc0306f29ef5887e39a10dc5 Mon Sep 17 00:00:00 2001 From: Tristan Ancelet Date: Thu, 23 Apr 2026 10:44:16 -0500 Subject: [PATCH] Removed max=, added sprintf support to logging methods/macros --- src/logger.cr | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/src/logger.cr b/src/logger.cr index 023a259..4ecc5b2 100644 --- a/src/logger.cr +++ b/src/logger.cr @@ -71,18 +71,16 @@ module Logger end end - {% for level in %w[ min max ] %} - def self.{{level.id}}=(selection : String) : Nil - Logger.debug "Entering with #{selection}" - raise "ERROR : {{level.id}}= : Invalid level" unless _level = LOG_LEVELS[selection.upcase] - synchronize { - @@{{level.id}}_level = _level - } - end - def self.{{level.id}} : String - @@{{level.id}}_level.to_s.downcase - end - {% end %} + def self.min=(selection : String) : Nil + Logger.debug "Entering with #{selection}" + raise "ERROR : {{level.id}}= : Invalid level" unless _level = LOG_LEVELS[selection.upcase] + synchronize { + @@min_level = _level + } + end + def self.min : String + @@min_level.to_s.downcase + end def self.valid?(level : LOG_LEVEL) : Bool level.in?(@@min_level.value..@@max_level.value) @@ -95,8 +93,9 @@ module Logger Logger.debug "Debug set to #{state}" end - def self.log(level : String, message : String) + def self.log(level : String, message : String, *args) _level = LOG_LEVELS[level] + message = message % args unless args.empty? if valid?(_level) || debug? synchronize { time = Time.local