Right now for my ConversionPattern I have:
log4j.appender.A1.layout.ConversionPattern=%d{yyyy MMM dd HH:mm:ss,SSS} %5p [%t] (%F:%L) - %m%n
What I'd like to do is also include the full package name with the class (%F:%L) but I can't find any config to do so in the docs. I do understand that this will be slower, but it's only for debugging and not when the system will be in production.
Maybe I just misunderstand you, but %C will output your class with package.
From your referenced docs:
%C
Used to output the fully qualified
class name of the caller issuing the
logging request. This conversion
specifier can be optionally followed
by precision specifier, that is a
decimal constant in brackets.
If a precision specifier is given,
then only the corresponding number of
right most components of the class
name will be printed. By default the
class name is output in fully
qualified form.
For example, for the class name
"org.apache.xyz.SomeClass", the
pattern %C{1} will output "SomeClass".
WARNING Generating the caller class
information is slow. Thus, use should
be avoided unless execution speed is
not an issue.
Update:
In many cases you can use %c also, which will print out the full class with package also, if your category is your class-name. For example when your doing stuff like this when initializing your Log:
private static final Log LOG = LogFactory.getLog(MyClazz.class);
Using %c is not slow.
Using C{1}
is slow. Please see the details below:
As per the following link:
Used to output the fully qualified class name of the caller issuing
the logging request. This conversion specifier can be optionally
followed by precision specifier, that is a decimal constant in
brackets. If a precision specifier is given, then only the
corresponding number of right most components of the class name will
be printed. By default the class name is output in fully qualified
form.
For example, for the class name org.apache.xyz.SomeClass
, the
pattern %C{1}
will output SomeClass
.
WARNING Generating the caller class information is slow. Thus, use should be avoided unless execution speed is not an issue.