From mboxrd@z Thu Jan 1 00:00:00 1970 From: cworth@cworth.org (Carl Worth) Date: Wed, 19 Aug 2009 22:25:39 -0700 Subject: [sup-talk] [PATCH] Make SUP_LOG_LEVEL self-documenting. Message-ID: <1250745799-sup-6607@yoom.home.cworth.org> The idea here is that if someone is looking at the log and not seeing the information of interest, then the log itself should tell them how to get more information, (by suggesting to set SUP_LOG_LEVEL to the next lower level). --- I'm probably still off as far as standard ruby idioms, (and I'm probably committing some sup layer violations as well). But hopefully you get the idea. I went to the log looking for details, couldn't find them, and had to resort to searching the mailing list for the exact name of the SUP_LOG_LEVEL variable. bin/sup | 3 +++ lib/sup/logger.rb | 2 ++ 2 files changed, 5 insertions(+), 0 deletions(-) diff --git a/bin/sup b/bin/sup index 3d5b6c1..afe2233 100755 --- a/bin/sup +++ b/bin/sup @@ -169,6 +169,9 @@ begin lmode.on_kill { Logger.clear! } Logger.add_sink lmode Logger.force_message "Welcome to Sup! Log level is set to #{Logger.level}." + if Logger.LEVELS.index(Logger.level) > 0 + Logger.force_message "For more verbose logging, restart with SUP_LOG_LEVEL=#{Logger.LEVELS[Logger.LEVELS.index(Logger.level)-1]}." + end debug "initializing inbox buffer" imode = InboxMode.new diff --git a/lib/sup/logger.rb b/lib/sup/logger.rb index ccaeae0..8567174 100644 --- a/lib/sup/logger.rb +++ b/lib/sup/logger.rb @@ -12,6 +12,8 @@ class Logger LEVELS = %w(debug info warn error) # in order! + def LEVELS; LEVELS end + def initialize level=nil level ||= ENV["SUP_LOG_LEVEL"] || "info" @level = LEVELS.index(level) or raise ArgumentError, "invalid log level #{level.inspect}: should be one of #{LEVELS * ', '}" -- 1.6.3.3 -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: not available URL: