We've never released a version "2.0-1.fc21" so it must be a Fedora build, presumably based on 2.0 or some fork of it.
You need to test with version 2.3 or a 2.4-SNAPSHOT. I'll leave you to Google how to install 2.3 on Fedora ;-) Gary On Wed, Aug 26, 2015 at 12:14 PM, Nicholas Duane <nic...@msn.com> wrote: > First off let me admit that I'm a noob at both Linux and java, and log4j > for that matter. > > I don't know how to package anything so my class that you see is a simple > java class which I compiled using javac. I then run it using 'java > HelloWorld'. I'm running fedora 21. When I do a 'yum list log4j' it says > I have 2.0-1.fc21. > > Thanks, > Nick > > > Date: Wed, 26 Aug 2015 11:46:51 -0700 > > Subject: Re: custom levels via configuration > > From: garydgreg...@gmail.com > > To: log4j-user@logging.apache.org > > > > This: > > > > <Logger name="HelloWorld" level="ALL"> > > > > is only going to match: > > > > static Logger log = LogManager.getLogger(HelloWorld.class.getName()); > > > > if the class in unpackaged, which it looks it is based on this paste but > I > > want to double check that you did not omit anything from the example. > > > > Are you using the latest version (2.3)?. > > > > I just added this test the other day to Git master: > > > > org.apache.logging.log4j.core.CustomLevelsTest > > > > And it shows that we can configure custom levels from a file and see them > > in code. > > > > So I am puzzled here. > > > > You could try the latest from Git master as well but I do not recall any > > fixes in this area. > > > > I wonder if the Appenders are processed by the configuration _before_ the > > custom levels... > > > > Gary > > > > > > On Wed, Aug 26, 2015 at 11:19 AM, Nicholas Duane <nic...@msn.com> wrote: > > > > > > > > > > > > > > On to my next problem. I'm trying to define a custom level in > > > configuration. Not sure if it's working or not. However, when I > attempt > > > to get the level for that custom level I get back null, which I wasn't > > > expecting. Here is the log4j2.xml config file: > > > > > > <?xml version="1.0" encoding="UTF-8"?> > > > <Configuration status="trace" verbose="true"> > > > <CustomLevels> > > > <CustomLevel name="INFOM1" intLevel="399"/> > > > <CustomLevel name="INFOP1" intLevel="401"/> > > > </CustomLevels> > > > <Appenders> > > > <File name="info" fileName="info.log"> > > > <PatternLayout> > > > <Pattern>%d %p %c{1.} [%t] %m%n</Pattern> > > > </PatternLayout> > > > <Filters> > > > <ThresholdFilter level="INFOM1" onMatch="DENY" > onMismatch="NEUTRAL"/> > > > <ThresholdFilter level="INFO" onMatch="ACCEPT" onMismatch="DENY"/> > > > </Filters> > > > </File> > > > </Appenders> > > > <Loggers> > > > <Logger name="HelloWorld" level="ALL"> > > > <AppenderRef ref="info"/> > > > </Logger> > > > <Root> > > > </Root> > > > </Loggers> > > > </Configuration> > > > > > > Here is my code: > > > > > > import org.apache.logging.log4j.LogManager; > > > import org.apache.logging.log4j.Logger; > > > import org.apache.logging.log4j.Level; > > > > > > public class HelloWorld > > > { > > > static Logger log = > LogManager.getLogger(HelloWorld.class.getName()); > > > > > > public static void main(String[] args) > > > { > > > System.out.println("Hello, World"); > > > log.info("hello this is an INFO message"); > > > log.warn("hello this is a WARN message"); > > > log.debug("hello this is a DEBUG message"); > > > Level level = Level.getLevel("INFOM1"); > > > if (level == null) > > > System.out.println("Didn't find level INFOM1"); > > > else > > > log.log(level, "hello this is an INFOM1 message"); > > > level = Level.getLevel("INFOP1"); > > > if (level == null) > > > System.out.println("Didn't find level INFOP1"); > > > else > > > log.log(level, "hello this is an INFOP1 message"); > > > } > > > } > > > > > > Any ideas? I obviously don't want to use Level.forName() as that will > > > create the level if it doesn't exist and I want to ensure I'm pulling > the > > > value from the configuration. > > > > > > Thanks, > > > Nick > > > > > > > > > > > > > > > > -- > > E-Mail: garydgreg...@gmail.com | ggreg...@apache.org > > Java Persistence with Hibernate, Second Edition > > <http://www.manning.com/bauer3/> > > JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> > > Spring Batch in Action <http://www.manning.com/templier/> > > Blog: http://garygregory.wordpress.com > > Home: http://garygregory.com/ > > Tweet! http://twitter.com/GaryGregory > > -- E-Mail: garydgreg...@gmail.com | ggreg...@apache.org Java Persistence with Hibernate, Second Edition <http://www.manning.com/bauer3/> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> Spring Batch in Action <http://www.manning.com/templier/> Blog: http://garygregory.wordpress.com Home: http://garygregory.com/ Tweet! http://twitter.com/GaryGregory