Skip to content
19 changes: 18 additions & 1 deletion lib/solargraph/logging.rb
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,26 @@ module Logging

module_function

# override this in your class to temporarily set a custom
# filtering log level for the class (e.g., suppress any debug
# message by setting it to :info even if it is set elsewhere, or
# show existing debug messages by setting to :debug).
#
# @return [Symbol]
def log_level
:warn
end

# @return [Logger]
def logger
@@logger
if LOG_LEVELS[log_level.to_s] == DEFAULT_LOG_LEVEL
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we cache this as @logger here?

@@logger
else
new_log_level = LOG_LEVELS[log_level.to_s]
logger = Logger.new(STDERR, level: new_log_level)
logger.formatter = @@logger.formatter
logger
end
end
end
end
Loading