[logback-user] PatternLayout feature request
Arthur Blake
blakesys at yahoo.com
Fri Jul 13 06:05:36 CEST 2007
Yes, I did notice all that you mentioned, but I still could not find any way to print the class name ONLY without the package name.
Thanks. (I want to see only "Bar" not m.s.s., etc.) I would think this would be a feature that would be worthwhile to have as part of logback.
I guess I'll have to implement it myself then.
thank you!
Arthur
----- Original Message ----
From: Ceki Gulcu <listid at qos.ch>
To: logback users list <logback-user at qos.ch>
Sent: Thursday, July 12, 2007 3:02:47 PM
Subject: Re: [logback-user] PatternLayout feature request
Hi Arthur,
Logback already offers a similar feature called automatic abbreviation
for logger names and for class names.
For example, the pattern "%logger{10}" will attempt to abbreviate the
logger name to 10 characters, thus the logger name
"mainPackage.sub.sample.Bar" will be printed as "m.s.s.Bar". The table
below from the Layout chapter [1] of the log4j manual lists other
examples.
Pattern Logger name Result
%logger mainPackage.sub.sample.Bar mainPackage.sub.sample.Bar
%logger{10} mainPackage.sub.sample.Bar m.s.s.Bar
%logger{15} mainPackage.sub.sample.Bar m.s.sample.Bar
%logger{16} mainPackage.sub.sample.Bar m.sub.sample.Bar
%logger{26} mainPackage.sub.sample.Bar mainPackage.sub.sample.Bar
Alternatively, logback makes it very easy (even easier than in log4j)
to define your own conversion patterns. See the section called
"Creating a custom conversion specifier" in the Layout chapter of the
logback manual.
I hope this helps,
[1] http://logback.qos.ch/manual/layouts.html
Arthur Blake wrote:
> I'm using Logback on a new project. I like it a lot so far. Seems like
> a leaner, tighter log4j. Pretty easy to learn quickly because it is so
> similar to log4j in a lot of ways.
>
> I'd like to see a feature in the PatternLayout where I can show just the
> class name of the logger without its package prefix.
> For example, if I have a logger named
> com.mycompany.myapplication.myarea.Stuff
> I'd like a version of the %logger conversion word that just outputs "Stuff"
> (not "com.mycompany.myapplication.myarea.Stuff" or even "c.m.m.m.Stuff")
>
> Most of my classes are unique across package names, and I'd like my log
> output to be more concise in this way.
> I'm not worried about being confused by name collisions because my
> application is small enough that it's obvious what logger is involved in
> my log output.
>
> I've gotten around this so far by naming some of my logs with just the
> class name without it's package, but I'd rather have a PatternLayout
> conversion word or specifier to handle this.
>
> Forgive me if this feature is already in the PatternLayout, but I
> couldn't find it after looking pretty hard.
>
> Arthur
--
Ceki Gülcü
Logback: The reliable, generic, fast and flexible logging framework for Java.
http://logback.qos.ch
_______________________________________________
Logback-user mailing list
Logback-user at qos.ch
http://qos.ch/mailman/listinfo/logback-user
____________________________________________________________________________________
The fish are biting.
Get more visitors on your site using Yahoo! Search Marketing.
http://searchmarketing.yahoo.com/arp/sponsoredsearch_v2.php
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://qos.ch/pipermail/logback-user/attachments/20070712/20185ae4/attachment.htm
More information about the Logback-user
mailing list