Level(3) User Contributed Perl Documentation Level(3) NAME Log::Log4perl::Level - Predefined log levels SYNOPSIS use Log::Log4perl::Level; print $ERROR, "\n"; # -- or -- use Log::Log4perl qw(:levels); print $ERROR, "\n"; DESCRIPTION "Log::Log4perl::Level" simply exports a predefined set of Log4perl log levels into the caller's name space. It is used internally by "Log::Log4perl". The following scalars are defined: $OFF $FATAL $ERROR $WARN $INFO $DEBUG $TRACE $ALL "Log::Log4perl" also exports these constants into the caller's namespace if you pull it in providing the ":levels" tag: use Log::Log4perl qw(:levels); This is the preferred way, there's usually no need to call "Log::Log4perl::Level" explicitly. The numerical values assigned to these constants are purely virtual, only used by Log::Log4perl internally and can change at any time, so please don't make any assumptions. You can test for numerical equality by directly comparing two level values, that's ok: if( get_logger()->level() == $DEBUG ) { print "The logger's level is DEBUG\n"; } But if you want to figure out which of two levels is more verbose, use Log4perl's own comparator: if( Log::Log4perl::Level::isGreaterOrEqual( $level1, $level2 ) ) { print Log::Log4perl::Level::to_level( $level1 ), " is equal or more verbose than ", Log::Log4perl::Level::to_level( $level2 ), "\n"; } If the caller wants to import level constants into a different namespace, it can be provided with the "use" command: use Log::Log4perl::Level qw(MyNameSpace); After this $MyNameSpace::ERROR, $MyNameSpace::INFO etc. will be defined accordingly. Numeric levels and Strings Level variables like $DEBUG or $WARN have numeric values that are internal to Log4perl. Transform them to strings that can be used in a Log4perl configuration file, use the c function provided by Log::Log4perl::Level: use Log::Log4perl qw(:easy); use Log::Log4perl::Level; # prints "DEBUG" print Log::Log4perl::Level::to_level( $DEBUG ), "\n"; To perform the reverse transformation, which takes a string like "DEBUG" and converts it into a constant like $DEBUG, use the to_priority() function: use Log::Log4perl qw(:easy); use Log::Log4perl::Level; my $numval = Log::Log4perl::Level::to_priority( "DEBUG" ); after which $numval could be used where a numerical value is required: Log::Log4perl->easy_init( $numval ); LICENSE Copyright 2002-2026 by Mike Schilli and Kevin Goess . This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.42.2 2026-08-14 Level(3)