Maintenance Ruby 3.3 gets fixes, but no new features. Switch to Ruby 4.0 →
instance method
Logger#with_level
with_level(severity) { || ... }
lib/logger.rb
View on GitHub ↗
# File tmp/rubies/ruby-3.3.0/lib/logger.rb, line 408
def with_level(severity)
prev, @level_override[Fiber.current] = level, Severity.coerce(severity)
begin
yield
ensure
if prev
@level_override[Fiber.current] = prev
else
@level_override.delete(Fiber.current)
end
end
end
Adjust the log level during the block execution for the current Fiber only
Example
logger.with_level(:debug) do logger.debug { "Hello" } end