Vielleicht habe ich dich einfach missverstanden, aber %C wird deine Klasse mit Paket ausgeben.
Aus deinen referenzierten Dokumenten:
%C
Wird verwendet, um den vollständig qualifizierten Klassennamen des Aufrufers auszugeben, der die Protokollanforderung stellt. Dieser Konvertierungsspezifizierer kann optional von einem Genauigkeitsspezifizierer gefolgt werden, das ist eine Dezimalkonstante in Klammern.
Wenn ein Genauigkeitsspezifizierer angegeben wird, dann werden nur die entsprechende Anzahl der rechtesten Komponenten des Klassennamens gedruckt. Standardmäßig wird der Klassenname vollständig qualifiziert ausgegeben.
Zum Beispiel wird für den Klassennamen "org.apache.xyz.SomeClass" das Muster %C{1} "SomeClass" ausgeben.
WARNUNG Die Erzeugung von Klasseninformationen ist langsam. Daher sollte der Einsatz vermieden werden, es sei denn, die Ausführungsgeschwindigkeit ist kein Problem.
Aktualisierung: In vielen Fällen kannst du auch %c verwenden, das auch die vollständige Klasse mit Paket ausgeben wird, wenn deine Kategorie dein Klassenname ist. Zum Beispiel, wenn du so etwas machst bei der Initialisierung deines Logs:
private static final Log LOG = LogFactory.getLog(MyClazz.class);
Die Verwendung von %c ist nicht langsam.