That doesn't really help much. I find the syntax below oddly annoying. What is strange is that I don't really mind it when there is only a single '-' character but when there is more than one I find it irritating - especially with size-based-triggering-policy. I can't tell you how many times I hit '=' instead of '-' when typing it.
<configuration status="warn" name="XMLConfigTest" packages="org.apache.logging.log4j.test"> <properties> <property name="filename">target/rolling1/rollingtest.log</Property> </properties> <threshold-filter level="debug"/> <appenders> <console name="STDOUT"> <pattern-layout pattern="%m%n"/> </console> <rolling-file name="RollingFile" file-name="${filename}" file-pattern="target/rolling1/test1-$${date:MM-dd-yyyy}-%i.log.gz"> <pattern-layout> <pattern>%d %p %C{1.} [%t] %m%n</pattern> </pattern-layout> <size-based-triggering-policy size="500" /> </rolling-file> <list name="List"> <threshold-filter level="error"/> </list> </appenders> <loggers> <logger name="org.apache.logging.log4j.test1" level="debug" additivity="false"> <thread-context-map-filter> <key-value-pair key="test" value="123"/> </thread-context-map-filter> <appender-ref ref="STDOUT"/> </logger>> <logger name="org.apache.logging.log4j.core.appender.rolling" level="debug" additivity="false"> <appender-ref ref="RollingFile"/> </logger>> <root level="error"> <appender-ref ref="STDOUT"/> </root> </loggers> </configuration> On Aug 16, 2013, at 11:41 PM, Nick Williams wrote: > Or we could just make them all hyphenated, which is my preference. Then we > avoid the stripping you detest and the errors you're afraid our users will > commit. :-) > > Nick > > On Aug 17, 2013, at 1:38 AM, Ralph Goers wrote: > >> OK. In general I guess I agree with your philosophy. However, I consider >> stripping/ignoring hyphens bad because then <a-p-p-e-n-d-e-r-r-e-f >> r-e-f="Console"/> becomes valid. The ONLY reason I wanted aliases is >> because I really believe users who are used to the "other" logging >> frameworks are constantly going to screw up and do <appender-ref ref="abc"/> >> instead of <AppenderRef ref="abc"/> simply because they are used to it. >> However, if my choice is between stripping or leaving it the way it is then >> I vote to leave it the way it is. Again, I just detest the idea of >> stripping hyphens. >> >> Ralph >> >> On Aug 16, 2013, at 11:28 PM, Nick Williams wrote: >> >>> Alright. Time to chime in I suppose, since I'm being quoted now. :-) >>> >>> I like consistency. I like the same rules to apply to all parts of the >>> configuration. For example: >>> >>> - If we decide that an element should be PascalCase, then they should ALL >>> be PascalCase. >>> - If we decide that an attribute should be camelCase, then they should ALL >>> be camelCase. >>> - If we decide that an element and/or attribute should be case-insensitive, >>> then ALL elements AND attributes should be case-insensitive. >>> - If we decide that an element and/or attribute should allow hyphens >>> between words, then ALL elements AND attributes should allow hyphens >>> between words. >>> >>> This last one is a key point here. Providing aliases would not be a sane >>> way to do this, because what if a developer added an attribute but forgot >>> to create a hyphenated alias? Suddenly, all elements and attributes would >>> allow hyphenation—except that one attribute. This is a consistency failure. >>> >>> I'm not arguing against aliases, necessarily. I just think they're a Bad >>> way to solve the hyphenation dispute (yes, capital Bad). With the >>> hyphenation issue solved otherwise (either by disallowing hyphens or by >>> stripping hyphens automatically), I no longer see a compelling need for >>> aliases. The addition of aliases also makes the task for users of extending >>> Log4j / writing plugins for Log4j more confusing. >>> >>> If I had to chose what we were going to do here, these are my >>> preferences/priorities, in order from most important to least important: >>> >>> - Consistency, consistency, consistency. >>> - A strict schema that must be validated against for the Log4j >>> configuration to work. No case insensitivity, no stripping of hyphens. >>> - All lowercase, hyphenated elements AND attributes. No PascalCase, no >>> camelCase. >>> - camelCase elements AND camelCase attributes. >>> - PascalCase elements AND PascalCase attributes. >>> >>> Nick >>> >>> On Aug 17, 2013, at 1:14 AM, Ralph Goers wrote: >>> >>>> On Aug 10 Nick said "I actually really like hyphenated attributes, but I >>>> like consistency better.". However, that doesn't imply that he is going >>>> to like allowing '-' to appear anywhere and be stripped out. Providing >>>> aliases would be a more sane way to do that. >>>> >>>> Ralph >>>> >>>> >>>> >>>> On Aug 16, 2013, at 10:57 PM, Gary Gregory wrote: >>>> >>>>> On Sat, Aug 17, 2013 at 1:44 AM, Ralph Goers <ralph.go...@dslextreme.com> >>>>> wrote: >>>>> So far yours is the only vote for that. Anyone else? >>>>> >>>>> Whomever else mentioned it in the first place! ;) I can't recall who... >>>>> but it's 2am here... >>>>> G >>>>> >>>>> Ralph >>>>> >>>>> On Aug 16, 2013, at 10:19 PM, Gary Gregory wrote: >>>>> >>>>>> I think we should do both. >>>>>> >>>>>> Gary >>>>>> >>>>>> On Aug 16, 2013, at 21:59, Ralph Goers <ralph.go...@dslextreme.com> >>>>>> wrote: >>>>>> >>>>>>> Easily done, assuming we have consensus. I am hearing two options: >>>>>>> 1) strip '-' characters from element names. >>>>>>> 2) allow aliases for element names. >>>>>>> >>>>>>> These are not mutually exclusive. I see no reason not to go ahead with >>>>>>> number 2 and we can continue to discuss where else number 1 might be >>>>>>> used. >>>>>>> >>>>>>> Ralph >>>>>>> >>>>>>> On Aug 16, 2013, at 2:21 PM, Remko Popma wrote: >>>>>>> >>>>>>>> Ralph, >>>>>>>> Don't forget the error-ref attribute for AsyncAppender. >>>>>>>> >>>>>>>> Remko >>>>>>>> >>>>>>>> On Saturday, August 17, 2013, Ralph Goers wrote: >>>>>>>> I'm not in favor of just allowing arbitrary '-' characters wherever >>>>>>>> users want. But allowing aliases makes it possible to allow for >>>>>>>> variations. I already have this working. >>>>>>>> >>>>>>>> Ralph >>>>>>>> >>>>>>>> >>>>>>>> On Aug 16, 2013, at 11:39 AM, Gary Gregory wrote: >>>>>>>> >>>>>>>>> On Fri, Aug 16, 2013 at 2:38 PM, Gary Gregory >>>>>>>>> <garydgreg...@gmail.com> wrote: >>>>>>>>> On Fri, Aug 16, 2013 at 2:28 PM, Scott Deboy <scott.de...@gmail.com> >>>>>>>>> wrote: >>>>>>>>> I'm not sure if this ship has fully sailed, but I'd prefer to see us >>>>>>>>> stick with he dash format due to folks being familiar with it from >>>>>>>>> log4j 1. >>>>>>>>> >>>>>>>>> That's a thin argument IMO considering you'll have to read the >>>>>>>>> version 2 config docs to get off the ground anyway, even if you know >>>>>>>>> your way around version 1. >>>>>>>>> >>>>>>>>> And this is also an opportunity to make our config code even fancier >>>>>>>>> by normalizing '-' chars ;) >>>>>>>>> >>>>>>>>> Gary >>>>>>>>> >>>>>>>>> >>>>>>>>> Gary >>>>>>>>> >>>>>>>>> >>>>>>>>> Scott >>>>>>>>> >>>>>>>>> On 8/16/13, Gary Gregory <garydgreg...@gmail.com> wrote: >>>>>>>>> > On Fri, Aug 16, 2013 at 1:13 PM, Ralph Goers >>>>>>>>> > <ralph.go...@dslextreme.com>wrote: >>>>>>>>> > >>>>>>>>> >> I'm adding an aliases attribute to the Plugin annotation. >>>>>>>>> >> >>>>>>>>> > >>>>>>>>> > Hold on to your horses ;) >>>>>>>>> > >>>>>>>>> > Another way to look at this is that our config parsing that is >>>>>>>>> > already >>>>>>>>> > case-insensitive could be augmented to strip out "-"s, no aliases >>>>>>>>> > needed. >>>>>>>>> > >>>>>>>>> > As someone pointed out here, some folks like-to-talk-like-this (see >>>>>>>>> > JPA). >>>>>>>>> > >>>>>>>>> > Gary >>>>>>>>> > >>>>>>>>> > >>>>>>>>> >> >>>>>>>>> >> On Aug 16, 2013, at 6:38 AM, Remko Popma wrote: >>>>>>>>> >> >>>>>>>>> >> Maybe we just need another plugin for the 2nd name then. Subclass >>>>>>>>> >> or >>>>>>>>> >> delegate? >>>>>>>>> >> >>>>>>>>> >> On Friday, August 16, 2013, Ralph Goers wrote: >>>>>>>>> >> >>>>>>>>> >>> I had the same thought. People switching from log4j 1 or logback >>>>>>>>> >>> will >>>>>>>>> >>> probably make that mistake a lot. Plus this breaks virtually >>>>>>>>> >>> everyone >>>>>>>>> >>> currently using Log4j 2. The problem is that I don't think there >>>>>>>>> >>> is >>>>>>>>> >>> currently a way for a plugin to have 2 names. >>>>>>>>> >>> >>>>>>>>> >>> Sent from my iPad >>>>>>>>> >>> >>>>>>>>> >>> On Aug 16, 2013, at 6:03 AM, Remko Popma <remko.po...@gmail.com> >>>>>>>>> >>> wrote: >>>>>>>>> >>> >>>>>>>>> >>> Would it be an idea to support both appender-ref and appenderRef >>>>>>>>> >>> attributes? >>>>>>>>> >>> >>>>>>>>> >>> >>>>>>>>> >>> >>>>>>>>> >>> On Thu, Aug 15, 2013 at 10:22 AM, Gary Gregory >>>>>>>>> >>> <garydgreg...@gmail.com>wrote: >>>>>>>>> >>> >>>>>>>>> >>> I never thought that Log4J 2 configuration files should be >>>>>>>>> >>> backward >>>>>>>>> >>> compatible with version 1, and even less so with a different >>>>>>>>> >>> product. >>>>>>>>> >>> >>>>>>>>> >>> Gary >>>>>>>>> >>> >>>>>>>>> >>> >>>>>>>>> >>> On Wed, Aug 14, 2013 at 8:51 PM, Ralph Goers >>>>>>>>> >>> <ralph.go...@dslextreme.com>wrote: >>>>>>>>> >>> >>>>>>>>> >>> Now that I see this it kind of scares me. Log4j 1.x and Logback >>>>>>>>> >>> both >>>>>>>>> >>> use >>>>>>>>> >>> appender-ref. Anyone using Log4j 2 will now be broken. >>>>>>>>> >>> >>>>>>>>> >>> On Aug 14, 2013, at 1:05 PM, ggreg...@apache.org wrote: >>>>>>>>> >>> >>>>>>>>> >>> > Modified: >>>>>>>>> >>> logging/log4j/log4j2/trunk/core/src/test/resources/log4j2-config.xml >>>>>>>>> >>> > URL: >>>>>>>>> >>> >>>>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> E-Mail: garydgreg...@gmail.com | ggreg...@apache.org >>>>> Java Persistence with Hibernate, Second Edition >>>>> JUnit in Action, Second Edition >>>>> Spring Batch in Action >>>>> Blog: http://garygregory.wordpress.com >>>>> Home: http://garygregory.com/ >>>>> Tweet! http://twitter.com/GaryGregory >>>> >>> >> >