|
18 | 18 |
|
19 | 19 | import org.apache.dubbo.common.logger.Logger;
|
20 | 20 |
|
21 |
| -import org.slf4j.spi.LocationAwareLogger; |
| 21 | +import org.apache.logging.log4j.Level; |
| 22 | +import org.apache.logging.log4j.message.MessageFactory; |
22 | 23 |
|
23 | 24 | public class Log4j2Logger implements Logger {
|
24 | 25 |
|
25 | 26 | private String fqcn;
|
26 | 27 |
|
27 | 28 | private final org.apache.logging.log4j.Logger logger;
|
28 | 29 |
|
| 30 | + private MessageFactory messageFactory; |
| 31 | + |
29 | 32 | public Log4j2Logger(org.apache.logging.log4j.Logger logger) {
|
30 | 33 | this.logger = logger;
|
31 | 34 | }
|
32 | 35 |
|
33 | 36 | public Log4j2Logger(String fqcn, org.apache.logging.log4j.Logger logger) {
|
34 | 37 | this.fqcn = fqcn;
|
35 | 38 | this.logger = logger;
|
| 39 | + this.messageFactory = logger.getMessageFactory(); |
36 | 40 | }
|
37 | 41 |
|
38 | 42 | @Override
|
39 | 43 | public void trace(String msg) {
|
40 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
41 |
| - ((LocationAwareLogger) logger).log(null, fqcn, LocationAwareLogger.TRACE_INT, msg, null, null); |
| 44 | + if (fqcn != null) { |
| 45 | + logger.logMessage(Level.TRACE, null, fqcn, null, messageFactory.newMessage(msg), null); |
42 | 46 | } else {
|
43 | 47 | logger.trace(msg);
|
44 | 48 | }
|
45 | 49 | }
|
46 | 50 |
|
47 | 51 | @Override
|
48 | 52 | public void trace(String msg, Object... arguments) {
|
49 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
50 |
| - ((LocationAwareLogger) logger).log(null, fqcn, LocationAwareLogger.TRACE_INT, msg, arguments, null); |
| 53 | + if (fqcn != null) { |
| 54 | + logger.logMessage(Level.TRACE, null, fqcn, null, messageFactory.newMessage(msg, arguments), null); |
51 | 55 | } else {
|
52 | 56 | logger.trace(msg, arguments);
|
53 | 57 | }
|
54 | 58 | }
|
55 | 59 |
|
56 | 60 | @Override
|
57 | 61 | public void trace(Throwable e) {
|
58 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
59 |
| - ((LocationAwareLogger) logger) |
60 |
| - .log(null, fqcn, LocationAwareLogger.TRACE_INT, e == null ? null : e.getMessage(), null, e); |
| 62 | + if (fqcn != null) { |
| 63 | + logger.logMessage( |
| 64 | + Level.TRACE, null, fqcn, null, messageFactory.newMessage(e == null ? null : e.getMessage()), e); |
61 | 65 | } else {
|
62 | 66 | logger.trace(e == null ? null : e.getMessage(), e);
|
63 | 67 | }
|
64 | 68 | }
|
65 | 69 |
|
66 | 70 | @Override
|
67 | 71 | public void trace(String msg, Throwable e) {
|
68 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
69 |
| - ((LocationAwareLogger) logger).log(null, fqcn, LocationAwareLogger.TRACE_INT, msg, null, e); |
| 72 | + if (fqcn != null) { |
| 73 | + logger.logMessage(Level.TRACE, null, fqcn, null, messageFactory.newMessage(msg), e); |
70 | 74 | } else {
|
71 | 75 | logger.trace(msg, e);
|
72 | 76 | }
|
73 | 77 | }
|
74 | 78 |
|
75 | 79 | @Override
|
76 | 80 | public void debug(String msg) {
|
77 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
78 |
| - ((LocationAwareLogger) logger).log(null, fqcn, LocationAwareLogger.DEBUG_INT, msg, null, null); |
| 81 | + if (fqcn != null) { |
| 82 | + logger.logMessage(Level.DEBUG, null, fqcn, null, messageFactory.newMessage(msg), null); |
79 | 83 | } else {
|
80 | 84 | logger.debug(msg);
|
81 | 85 | }
|
82 | 86 | }
|
83 | 87 |
|
84 | 88 | @Override
|
85 | 89 | public void debug(String msg, Object... arguments) {
|
86 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
87 |
| - ((LocationAwareLogger) logger).log(null, fqcn, LocationAwareLogger.DEBUG_INT, msg, arguments, null); |
| 90 | + if (fqcn != null) { |
| 91 | + logger.logMessage(Level.DEBUG, null, fqcn, null, messageFactory.newMessage(msg, arguments), null); |
88 | 92 | } else {
|
89 | 93 | logger.debug(msg, arguments);
|
90 | 94 | }
|
91 | 95 | }
|
92 | 96 |
|
93 | 97 | @Override
|
94 | 98 | public void debug(Throwable e) {
|
95 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
96 |
| - ((LocationAwareLogger) logger) |
97 |
| - .log(null, fqcn, LocationAwareLogger.DEBUG_INT, e == null ? null : e.getMessage(), null, e); |
| 99 | + if (fqcn != null) { |
| 100 | + logger.logMessage( |
| 101 | + Level.DEBUG, null, fqcn, null, messageFactory.newMessage(e == null ? null : e.getMessage()), e); |
98 | 102 | } else {
|
99 | 103 | logger.debug(e == null ? null : e.getMessage(), e);
|
100 | 104 | }
|
101 | 105 | }
|
102 | 106 |
|
103 | 107 | @Override
|
104 | 108 | public void debug(String msg, Throwable e) {
|
105 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
106 |
| - ((LocationAwareLogger) logger).log(null, fqcn, LocationAwareLogger.DEBUG_INT, msg, null, e); |
| 109 | + if (fqcn != null) { |
| 110 | + logger.logMessage(Level.DEBUG, null, fqcn, null, messageFactory.newMessage(msg), e); |
107 | 111 | } else {
|
108 | 112 | logger.debug(msg, e);
|
109 | 113 | }
|
110 | 114 | }
|
111 | 115 |
|
112 | 116 | @Override
|
113 | 117 | public void info(String msg) {
|
114 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
115 |
| - ((LocationAwareLogger) logger).log(null, fqcn, LocationAwareLogger.INFO_INT, msg, null, null); |
| 118 | + if (fqcn != null) { |
| 119 | + logger.logMessage(Level.INFO, null, fqcn, null, messageFactory.newMessage(msg), null); |
116 | 120 | } else {
|
117 | 121 | logger.info(msg);
|
118 | 122 | }
|
119 | 123 | }
|
120 | 124 |
|
121 | 125 | @Override
|
122 | 126 | public void info(String msg, Object... arguments) {
|
123 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
124 |
| - ((LocationAwareLogger) logger).log(null, fqcn, LocationAwareLogger.INFO_INT, msg, arguments, null); |
| 127 | + if (fqcn != null) { |
| 128 | + logger.logMessage(Level.INFO, null, fqcn, null, messageFactory.newMessage(msg, arguments), null); |
125 | 129 | } else {
|
126 | 130 | logger.info(msg, arguments);
|
127 | 131 | }
|
128 | 132 | }
|
129 | 133 |
|
130 | 134 | @Override
|
131 | 135 | public void info(Throwable e) {
|
132 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
133 |
| - ((LocationAwareLogger) logger) |
134 |
| - .log(null, fqcn, LocationAwareLogger.INFO_INT, e == null ? null : e.getMessage(), null, e); |
| 136 | + if (fqcn != null) { |
| 137 | + logger.logMessage( |
| 138 | + Level.INFO, null, fqcn, null, messageFactory.newMessage(e == null ? null : e.getMessage()), e); |
135 | 139 | } else {
|
136 | 140 | logger.info(e == null ? null : e.getMessage(), e);
|
137 | 141 | }
|
138 | 142 | }
|
139 | 143 |
|
140 | 144 | @Override
|
141 | 145 | public void info(String msg, Throwable e) {
|
142 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
143 |
| - ((LocationAwareLogger) logger).log(null, fqcn, LocationAwareLogger.INFO_INT, msg, null, e); |
| 146 | + if (fqcn != null) { |
| 147 | + logger.logMessage(Level.INFO, null, fqcn, null, messageFactory.newMessage(msg), e); |
144 | 148 | } else {
|
145 | 149 | logger.info(msg, e);
|
146 | 150 | }
|
147 | 151 | }
|
148 | 152 |
|
149 | 153 | @Override
|
150 | 154 | public void warn(String msg) {
|
151 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
152 |
| - ((LocationAwareLogger) logger).log(null, fqcn, LocationAwareLogger.WARN_INT, msg, null, null); |
| 155 | + if (fqcn != null) { |
| 156 | + logger.logMessage(Level.WARN, null, fqcn, null, messageFactory.newMessage(msg), null); |
153 | 157 | } else {
|
154 | 158 | logger.warn(msg);
|
155 | 159 | }
|
156 | 160 | }
|
157 | 161 |
|
158 | 162 | @Override
|
159 | 163 | public void warn(String msg, Object... arguments) {
|
160 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
161 |
| - ((LocationAwareLogger) logger).log(null, fqcn, LocationAwareLogger.WARN_INT, msg, arguments, null); |
| 164 | + if (fqcn != null) { |
| 165 | + logger.logMessage(Level.WARN, null, fqcn, null, messageFactory.newMessage(msg, arguments), null); |
162 | 166 | } else {
|
163 | 167 | logger.warn(msg, arguments);
|
164 | 168 | }
|
165 | 169 | }
|
166 | 170 |
|
167 | 171 | @Override
|
168 | 172 | public void warn(Throwable e) {
|
169 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
170 |
| - ((LocationAwareLogger) logger) |
171 |
| - .log(null, fqcn, LocationAwareLogger.WARN_INT, e == null ? null : e.getMessage(), null, e); |
| 173 | + if (fqcn != null) { |
| 174 | + logger.logMessage( |
| 175 | + Level.WARN, null, fqcn, null, messageFactory.newMessage(e == null ? null : e.getMessage()), e); |
172 | 176 | } else {
|
173 | 177 | logger.warn(e == null ? null : e.getMessage(), e);
|
174 | 178 | }
|
175 | 179 | }
|
176 | 180 |
|
177 | 181 | @Override
|
178 | 182 | public void warn(String msg, Throwable e) {
|
179 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
180 |
| - ((LocationAwareLogger) logger).log(null, fqcn, LocationAwareLogger.WARN_INT, msg, null, e); |
| 183 | + if (fqcn != null) { |
| 184 | + logger.logMessage(Level.WARN, null, fqcn, null, messageFactory.newMessage(msg), e); |
181 | 185 | } else {
|
182 | 186 | logger.warn(msg, e);
|
183 | 187 | }
|
184 | 188 | }
|
185 | 189 |
|
186 | 190 | @Override
|
187 | 191 | public void error(String msg) {
|
188 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
189 |
| - ((LocationAwareLogger) logger).log(null, fqcn, LocationAwareLogger.ERROR_INT, msg, null, null); |
| 192 | + if (fqcn != null) { |
| 193 | + logger.logMessage(Level.ERROR, null, fqcn, null, messageFactory.newMessage(msg), null); |
190 | 194 | } else {
|
191 | 195 | logger.error(msg);
|
192 | 196 | }
|
193 | 197 | }
|
194 | 198 |
|
195 | 199 | @Override
|
196 | 200 | public void error(String msg, Object... arguments) {
|
197 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
198 |
| - ((LocationAwareLogger) logger).log(null, fqcn, LocationAwareLogger.ERROR_INT, msg, arguments, null); |
| 201 | + if (fqcn != null) { |
| 202 | + logger.logMessage(Level.ERROR, null, fqcn, null, messageFactory.newMessage(msg, arguments), null); |
199 | 203 | } else {
|
200 | 204 | logger.error(msg, arguments);
|
201 | 205 | }
|
202 | 206 | }
|
203 | 207 |
|
204 | 208 | @Override
|
205 | 209 | public void error(Throwable e) {
|
206 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
207 |
| - ((LocationAwareLogger) logger) |
208 |
| - .log(null, fqcn, LocationAwareLogger.ERROR_INT, e == null ? null : e.getMessage(), null, e); |
| 210 | + if (fqcn != null) { |
| 211 | + logger.logMessage( |
| 212 | + Level.ERROR, null, fqcn, null, messageFactory.newMessage(e == null ? null : e.getMessage()), e); |
209 | 213 | } else {
|
210 | 214 | logger.error(e == null ? null : e.getMessage(), e);
|
211 | 215 | }
|
212 | 216 | }
|
213 | 217 |
|
214 | 218 | @Override
|
215 | 219 | public void error(String msg, Throwable e) {
|
216 |
| - if (fqcn != null && logger instanceof LocationAwareLogger) { |
217 |
| - ((LocationAwareLogger) logger).log(null, fqcn, LocationAwareLogger.ERROR_INT, msg, null, e); |
| 220 | + if (fqcn != null) { |
| 221 | + logger.logMessage(Level.ERROR, null, fqcn, null, messageFactory.newMessage(msg), e); |
218 | 222 | } else {
|
219 | 223 | logger.error(msg, e);
|
220 | 224 | }
|
|
0 commit comments