1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.logging.log4j.core.pattern;
18
19 import org.apache.logging.log4j.core.LogEvent;
20 import org.apache.logging.log4j.core.config.plugins.Plugin;
21 import org.apache.logging.log4j.core.impl.LocationAware;
22
23
24
25
26 @Plugin(name = "FullLocationPatternConverter", category = PatternConverter.CATEGORY)
27 @ConverterKeys({ "l", "location" })
28 public final class FullLocationPatternConverter extends LogEventPatternConverter implements LocationAware {
29
30
31
32 private static final FullLocationPatternConverter INSTANCE =
33 new FullLocationPatternConverter();
34
35
36
37
38 private FullLocationPatternConverter() {
39 super("Full Location", "fullLocation");
40 }
41
42
43
44
45
46
47
48 public static FullLocationPatternConverter newInstance(final String[] options) {
49 return INSTANCE;
50 }
51
52
53
54
55 @Override
56 public void format(final LogEvent event, final StringBuilder output) {
57 final StackTraceElement element = event.getSource();
58
59 if (element != null) {
60 output.append(element.toString());
61 }
62 }
63
64 @Override
65 public boolean requiresLocation() {
66 return true;
67 }
68 }