Skip to content

Commit 13d85fa

Browse files
authored
Merge pull request #84 from rssdev10/fix/JULIA_DEBUG
fixed usage with JULIA_DEBUG
2 parents d3b3a02 + 2f72a09 commit 13d85fa

File tree

3 files changed

+50
-4
lines changed

3 files changed

+50
-4
lines changed

Project.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "LoggingExtras"
22
uuid = "e6f89c97-d47a-5376-807f-9c37f3926c36"
33
authors = ["Frames White <[email protected]>", "Collaborators <https://github.com/JuliaLogging/LoggingExtras.jl/graphs/contributors>"]
4-
version = "1.0.1"
4+
version = "1.0.2"
55

66
[deps]
77
Dates = "ade2ca70-3891-5945-98fb-dc099432e06a"

src/CompositionalLoggers/common.jl

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,10 @@
44
# before passing anything on.
55

66
# For checking child logger, need to check both `min_enabled_level` and `shouldlog`
7-
function comp_shouldlog(logger, args...)
8-
level = first(args)
9-
min_enabled_level(logger) <= level && shouldlog(logger, args...)
7+
function comp_shouldlog(logger, level, _module, group, id)
8+
(min_enabled_level(logger) <= level && shouldlog(logger, level, _module, group, id)) ||
9+
Base.CoreLogging.env_override_minlevel(group, _module)
10+
# `env_override_minlevel` is the internal function that makes JULIA_DEBUG environment variable work
1011
end
1112

1213
# For checking if child logger will take the message you are sending

test/runtests.jl

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -297,6 +297,51 @@ end
297297
@test length(logger.logs) == 1
298298
end
299299

300+
# Define a module for testing conditional debug messages
301+
module JuliaDebugTest
302+
303+
function debug_message(str)
304+
@debug str
305+
end
306+
307+
end
308+
309+
@testset "JULIA_DEBUG" begin
310+
expected_messages = 0
311+
logger = TestLogger(min_level=Info)
312+
with_logger(logger) do
313+
JuliaDebugTest.debug_message("debug")
314+
end
315+
@test length(logger.logs) == expected_messages
316+
317+
extra_logger = TransformerLogger(logger) do log
318+
merge(log, (; message="New message"))
319+
end
320+
with_logger(extra_logger) do
321+
JuliaDebugTest.debug_message("debug")
322+
end
323+
@test length(logger.logs) == expected_messages
324+
325+
ENV["JULIA_DEBUG"] = "JuliaDebugTest"
326+
with_logger(logger) do
327+
JuliaDebugTest.debug_message("debug")
328+
expected_messages += 1
329+
end
330+
@test length(logger.logs) == expected_messages
331+
332+
with_logger(extra_logger) do
333+
JuliaDebugTest.debug_message("debug")
334+
expected_messages += 1
335+
end
336+
@test length(logger.logs) == expected_messages
337+
338+
delete!(ENV, "JULIA_DEBUG")
339+
with_logger(extra_logger) do
340+
JuliaDebugTest.debug_message("debug")
341+
end
342+
@test length(logger.logs) == expected_messages
343+
end
344+
300345
@testset "Deprecations" begin
301346
# Nothing is currently deprecated
302347
end

0 commit comments

Comments
 (0)