diff --git a/src/logger.cr b/src/logger.cr index f0e6413..5b3db20 100644 --- a/src/logger.cr +++ b/src/logger.cr @@ -3,6 +3,22 @@ require "colorize" module Logger + macro finished + {% if @top_level.has_constant?("CliGen") %} + {% levels = LOG_LEVELS.map{|level| [level.stringify.downcase,level]}.to_h %} + {% for level in %w[ max min ] %} + CliGen.add_default_flag(long: "--{{level}} {{level.upcase}}", "Configure the {{level}}imum log level (default is: #{@@{{level}}_level)})"){|level| + levels = {{levels}}.to_h + abort "ERROR : --{{level}}_level : Level(#{level}) is not valid. (valid: #{labels.keys.join(", ")})" unless levels.has_key?(level) + @@{{level}}_level = LOG_LEVELS[lables[level]] + } + {% end %} + CliGen.add_default_flag(short: "-d", long: "--debug", "Tell the logger that we should enable full debug logging"){ + Logger.debug = true + } + {% end %} + end + annotation LoggerWatcher end