1 /*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache license, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the license for the specific language governing permissions and
15 * limitations under the license.
16 */
17 package org.apache.logging.log4j;
18
19 import org.apache.logging.log4j.message.EntryMessage;
20 import org.apache.logging.log4j.message.Message;
21 import org.apache.logging.log4j.message.MessageFactory;
22 import org.apache.logging.log4j.message.MessageFactory2;
23 import org.apache.logging.log4j.util.MessageSupplier;
24 import org.apache.logging.log4j.util.Supplier;
25
26 /**
27 * This is the central interface in the log4j package. Most logging operations, except configuration, are done through
28 * this interface.
29 *
30 * <p>
31 * The canonical way to obtain a Logger for a class is through {@link LogManager#getLogger()}. Typically, each class
32 * gets its own Logger named after its fully qualified class name (the default Logger name when obtained through the
33 * {@link LogManager#getLogger()} method). Thus, the simplest way to use this would be like so:
34 * </p>
35 *
36 * <pre>
37 * public class MyClass {
38 * private static final Logger LOGGER = LogManager.getLogger();
39 * // ...
40 * }
41 * </pre>
42 * <p>
43 * For ease of filtering, searching, sorting, etc., it is generally a good idea to create Loggers for each class rather
44 * than sharing Loggers. Instead, {@link Marker Markers} should be used for shared, filterable identification.
45 * </p>
46 * <p>
47 * For service provider implementations, it is recommended to extend the
48 * {@link org.apache.logging.log4j.spi.AbstractLogger} class rather than implementing this interface directly.
49 * </p>
50 *
51 * Since 2.4, methods have been added to the {@code Logger} interface to support lambda expressions. The new methods
52 * allow client code to lazily log messages without explicitly checking if the requested log level is enabled. For
53 * example, previously one would write:
54 *
55 * <pre>
56 * // pre-Java 8 style optimization: explicitly check the log level
57 * // to make sure the expensiveOperation() method is only called if necessary
58 * if (logger.isTraceEnabled()) {
59 * logger.trace("Some long-running operation returned {}", expensiveOperation());
60 * }
61 * </pre>
62 * <p>
63 * With Java 8, the same effect can be achieved with a lambda expression:
64 *
65 * <pre>
66 * // Java-8 style optimization: no need to explicitly check the log level:
67 * // the lambda expression is not evaluated if the TRACE level is not enabled
68 * logger.trace("Some long-running operation returned {}", () -> expensiveOperation());
69 * </pre>
70 *
71 * <p>
72 * Note that although {@link MessageSupplier} is provided, using {@link Supplier Supplier<Message>} works just the
73 * same. MessageSupplier was deprecated in 2.6 and un-deprecated in 2.8.1. Anonymous class usage of these APIs
74 * should prefer using Supplier instead.
75 * </p>
76 */
77 public interface Logger {
78
79 /**
80 * Logs an exception or error that has been caught to a specific logging level.
81 *
82 * @param level The logging Level.
83 * @param t The Throwable.
84 */
85 void catching(Level level, Throwable t);
86
87 /**
88 * Logs an exception or error that has been caught. Normally, one may wish to provide additional information with an
89 * exception while logging it; in these cases, one would not use this method. In other cases where simply logging
90 * the fact that an exception was swallowed somewhere (e.g., at the top of the stack trace in a {@code main()}
91 * method), this method is ideal for it.
92 *
93 * @param t The Throwable.
94 */
95 void catching(Throwable t);
96
97 /**
98 * Logs a message with the specific Marker at the {@link Level#DEBUG DEBUG} level.
99 *
100 * @param marker the marker data specific to this log statement
101 * @param msg the message string to be logged
102 */
103 void debug(Marker marker, Message msg);
104
105 /**
106 * Logs a message with the specific Marker at the {@link Level#DEBUG DEBUG} level.
107 *
108 * @param marker the marker data specific to this log statement
109 * @param msg the message string to be logged
110 * @param t A Throwable or null.
111 */
112 void debug(Marker marker, Message msg, Throwable t);
113
114 /**
115 * Logs a message which is only to be constructed if the logging level is the {@link Level#DEBUG DEBUG} level with
116 * the specified Marker. The {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the
117 * {@code Message}.
118 *
119 * @param marker the marker data specific to this log statement
120 * @param msgSupplier A function, which when called, produces the desired log message.
121 * @since 2.4
122 */
123 void debug(Marker marker, MessageSupplier msgSupplier);
124
125 /**
126 * Logs a message (only to be constructed if the logging level is the {@link Level#DEBUG DEBUG} level) with the
127 * specified Marker and including the stack trace of the {@link Throwable} <code>t</code> passed as parameter. The
128 * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.
129 *
130 * @param marker the marker data specific to this log statement
131 * @param msgSupplier A function, which when called, produces the desired log message.
132 * @param t A Throwable or null.
133 * @since 2.4
134 */
135 void debug(Marker marker, MessageSupplier msgSupplier, Throwable t);
136
137 /**
138 * Logs a message CharSequence with the {@link Level#DEBUG DEBUG} level.
139 *
140 * @param marker the marker data specific to this log statement
141 * @param message the message CharSequence to log.
142 */
143 void debug(Marker marker, CharSequence message);
144
145 /**
146 * Logs a message CharSequence at the {@link Level#DEBUG DEBUG} level including the stack trace of the
147 * {@link Throwable} <code>t</code> passed as parameter.
148 *
149 * @param marker the marker data specific to this log statement
150 * @param message the message CharSequence to log.
151 * @param t the exception to log, including its stack trace.
152 */
153 void debug(Marker marker, CharSequence message, Throwable t);
154
155 /**
156 * Logs a message object with the {@link Level#DEBUG DEBUG} level.
157 *
158 * @param marker the marker data specific to this log statement
159 * @param message the message object to log.
160 */
161 void debug(Marker marker, Object message);
162
163 /**
164 * Logs a message at the {@link Level#DEBUG DEBUG} level including the stack trace of the {@link Throwable}
165 * <code>t</code> passed as parameter.
166 *
167 * @param marker the marker data specific to this log statement
168 * @param message the message to log.
169 * @param t the exception to log, including its stack trace.
170 */
171 void debug(Marker marker, Object message, Throwable t);
172
173 /**
174 * Logs a message object with the {@link Level#DEBUG DEBUG} level.
175 *
176 * @param marker the marker data specific to this log statement
177 * @param message the message object to log.
178 */
179 void debug(Marker marker, String message);
180
181 /**
182 * Logs a message with parameters at the {@link Level#DEBUG DEBUG} level.
183 *
184 * @param marker the marker data specific to this log statement
185 * @param message the message to log; the format depends on the message factory.
186 * @param params parameters to the message.
187 * @see #getMessageFactory()
188 */
189 void debug(Marker marker, String message, Object... params);
190
191 /**
192 * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#DEBUG
193 * DEBUG} level.
194 *
195 * @param marker the marker data specific to this log statement
196 * @param message the message to log; the format depends on the message factory.
197 * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.
198 * @since 2.4
199 */
200 void debug(Marker marker, String message, Supplier<?>... paramSuppliers);
201
202 /**
203 * Logs a message at the {@link Level#DEBUG DEBUG} level including the stack trace of the {@link Throwable}
204 * <code>t</code> passed as parameter.
205 *
206 * @param marker the marker data specific to this log statement
207 * @param message the message to log.
208 * @param t the exception to log, including its stack trace.
209 */
210 void debug(Marker marker, String message, Throwable t);
211
212 /**
213 * Logs a message which is only to be constructed if the logging level is the {@link Level#DEBUG DEBUG} level with
214 * the specified Marker.
215 *
216 * @param marker the marker data specific to this log statement
217 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
218 * message factory.
219 * @since 2.4
220 */
221 void debug(Marker marker, Supplier<?> msgSupplier);
222
223 /**
224 * Logs a message (only to be constructed if the logging level is the {@link Level#DEBUG DEBUG} level) with the
225 * specified Marker and including the stack trace of the {@link Throwable} <code>t</code> passed as parameter.
226 *
227 * @param marker the marker data specific to this log statement
228 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
229 * message factory.
230 * @param t A Throwable or null.
231 * @since 2.4
232 */
233 void debug(Marker marker, Supplier<?> msgSupplier, Throwable t);
234
235 /**
236 * Logs a message with the specific Marker at the {@link Level#DEBUG DEBUG} level.
237 *
238 * @param msg the message string to be logged
239 */
240 void debug(Message msg);
241
242 /**
243 * Logs a message with the specific Marker at the {@link Level#DEBUG DEBUG} level.
244 *
245 * @param msg the message string to be logged
246 * @param t A Throwable or null.
247 */
248 void debug(Message msg, Throwable t);
249
250 /**
251 * Logs a message which is only to be constructed if the logging level is the {@link Level#DEBUG DEBUG} level. The
252 * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.
253 *
254 * @param msgSupplier A function, which when called, produces the desired log message.
255 * @since 2.4
256 */
257 void debug(MessageSupplier msgSupplier);
258
259 /**
260 * Logs a message (only to be constructed if the logging level is the {@link Level#DEBUG DEBUG} level) including the
261 * stack trace of the {@link Throwable} <code>t</code> passed as parameter. The {@code MessageSupplier} may or may
262 * not use the {@link MessageFactory} to construct the {@code Message}.
263 *
264 * @param msgSupplier A function, which when called, produces the desired log message.
265 * @param t the exception to log, including its stack trace.
266 * @since 2.4
267 */
268 void debug(MessageSupplier msgSupplier, Throwable t);
269
270 /**
271 * Logs a message CharSequence with the {@link Level#DEBUG DEBUG} level.
272 *
273 * @param message the message object to log.
274 */
275 void debug(CharSequence message);
276
277 /**
278 * Logs a CharSequence at the {@link Level#DEBUG DEBUG} level including the stack trace of the {@link Throwable}
279 * <code>t</code> passed as parameter.
280 *
281 * @param message the message CharSequence to log.
282 * @param t the exception to log, including its stack trace.
283 */
284 void debug(CharSequence message, Throwable t);
285
286 /**
287 * Logs a message object with the {@link Level#DEBUG DEBUG} level.
288 *
289 * @param message the message object to log.
290 */
291 void debug(Object message);
292
293 /**
294 * Logs a message at the {@link Level#DEBUG DEBUG} level including the stack trace of the {@link Throwable}
295 * <code>t</code> passed as parameter.
296 *
297 * @param message the message to log.
298 * @param t the exception to log, including its stack trace.
299 */
300 void debug(Object message, Throwable t);
301
302 /**
303 * Logs a message object with the {@link Level#DEBUG DEBUG} level.
304 *
305 * @param message the message string to log.
306 */
307 void debug(String message);
308
309 /**
310 * Logs a message with parameters at the {@link Level#DEBUG DEBUG} level.
311 *
312 * @param message the message to log; the format depends on the message factory.
313 * @param params parameters to the message.
314 * @see #getMessageFactory()
315 */
316 void debug(String message, Object... params);
317
318 /**
319 * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#DEBUG
320 * DEBUG} level.
321 *
322 * @param message the message to log; the format depends on the message factory.
323 * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.
324 * @since 2.4
325 */
326 void debug(String message, Supplier<?>... paramSuppliers);
327
328 /**
329 * Logs a message at the {@link Level#DEBUG DEBUG} level including the stack trace of the {@link Throwable}
330 * <code>t</code> passed as parameter.
331 *
332 * @param message the message to log.
333 * @param t the exception to log, including its stack trace.
334 */
335 void debug(String message, Throwable t);
336
337 /**
338 * Logs a message which is only to be constructed if the logging level is the {@link Level#DEBUG DEBUG} level.
339 *
340 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
341 * message factory.
342 * @since 2.4
343 */
344 void debug(Supplier<?> msgSupplier);
345
346 /**
347 * Logs a message (only to be constructed if the logging level is the {@link Level#DEBUG DEBUG} level) including the
348 * stack trace of the {@link Throwable} <code>t</code> passed as parameter.
349 *
350 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
351 * message factory.
352 * @param t the exception to log, including its stack trace.
353 * @since 2.4
354 */
355 void debug(Supplier<?> msgSupplier, Throwable t);
356
357 /**
358 * Logs a message with parameters at debug level.
359 *
360 * @param marker the marker data specific to this log statement
361 * @param message the message to log; the format depends on the message factory.
362 * @param p0 parameter to the message.
363 */
364 void debug(Marker marker, String message, Object p0);
365
366 /**
367 * Logs a message with parameters at debug level.
368 *
369 * @param marker the marker data specific to this log statement
370 * @param message the message to log; the format depends on the message factory.
371 * @param p0 parameter to the message.
372 * @param p1 parameter to the message.
373 */
374 void debug(Marker marker, String message, Object p0, Object p1);
375
376 /**
377 * Logs a message with parameters at debug level.
378 *
379 * @param marker the marker data specific to this log statement
380 * @param message the message to log; the format depends on the message factory.
381 * @param p0 parameter to the message.
382 * @param p1 parameter to the message.
383 * @param p2 parameter to the message.
384 */
385 void debug(Marker marker, String message, Object p0, Object p1, Object p2);
386
387 /**
388 * Logs a message with parameters at debug level.
389 *
390 * @param marker the marker data specific to this log statement
391 * @param message the message to log; the format depends on the message factory.
392 * @param p0 parameter to the message.
393 * @param p1 parameter to the message.
394 * @param p2 parameter to the message.
395 * @param p3 parameter to the message.
396 */
397 void debug(Marker marker, String message, Object p0, Object p1, Object p2, Object p3);
398
399 /**
400 * Logs a message with parameters at debug level.
401 *
402 * @param marker the marker data specific to this log statement
403 * @param message the message to log; the format depends on the message factory.
404 * @param p0 parameter to the message.
405 * @param p1 parameter to the message.
406 * @param p2 parameter to the message.
407 * @param p3 parameter to the message.
408 * @param p4 parameter to the message.
409 */
410 void debug(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4);
411
412 /**
413 * Logs a message with parameters at debug level.
414 *
415 * @param marker the marker data specific to this log statement
416 * @param message the message to log; the format depends on the message factory.
417 * @param p0 parameter to the message.
418 * @param p1 parameter to the message.
419 * @param p2 parameter to the message.
420 * @param p3 parameter to the message.
421 * @param p4 parameter to the message.
422 * @param p5 parameter to the message.
423 */
424 void debug(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);
425
426 /**
427 * Logs a message with parameters at debug level.
428 *
429 * @param marker the marker data specific to this log statement
430 * @param message the message to log; the format depends on the message factory.
431 * @param p0 parameter to the message.
432 * @param p1 parameter to the message.
433 * @param p2 parameter to the message.
434 * @param p3 parameter to the message.
435 * @param p4 parameter to the message.
436 * @param p5 parameter to the message.
437 * @param p6 parameter to the message.
438 */
439 void debug(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5,
440 Object p6);
441
442 /**
443 * Logs a message with parameters at debug level.
444 *
445 * @param marker the marker data specific to this log statement
446 * @param message the message to log; the format depends on the message factory.
447 * @param p0 parameter to the message.
448 * @param p1 parameter to the message.
449 * @param p2 parameter to the message.
450 * @param p3 parameter to the message.
451 * @param p4 parameter to the message.
452 * @param p5 parameter to the message.
453 * @param p6 parameter to the message.
454 * @param p7 parameter to the message.
455 */
456 void debug(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
457 Object p7);
458
459 /**
460 * Logs a message with parameters at debug level.
461 *
462 * @param marker the marker data specific to this log statement
463 * @param message the message to log; the format depends on the message factory.
464 * @param p0 parameter to the message.
465 * @param p1 parameter to the message.
466 * @param p2 parameter to the message.
467 * @param p3 parameter to the message.
468 * @param p4 parameter to the message.
469 * @param p5 parameter to the message.
470 * @param p6 parameter to the message.
471 * @param p7 parameter to the message.
472 * @param p8 parameter to the message.
473 */
474 void debug(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
475 Object p7, Object p8);
476
477 /**
478 * Logs a message with parameters at debug level.
479 *
480 * @param marker the marker data specific to this log statement
481 * @param message the message to log; the format depends on the message factory.
482 * @param p0 parameter to the message.
483 * @param p1 parameter to the message.
484 * @param p2 parameter to the message.
485 * @param p3 parameter to the message.
486 * @param p4 parameter to the message.
487 * @param p5 parameter to the message.
488 * @param p6 parameter to the message.
489 * @param p7 parameter to the message.
490 * @param p8 parameter to the message.
491 * @param p9 parameter to the message.
492 */
493 void debug(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
494 Object p7, Object p8, Object p9);
495
496 /**
497 * Logs a message with parameters at debug level.
498 *
499 * @param message the message to log; the format depends on the message factory.
500 * @param p0 parameter to the message.
501 */
502 void debug(String message, Object p0);
503
504 /**
505 * Logs a message with parameters at debug level.
506 *
507 * @param message the message to log; the format depends on the message factory.
508 * @param p0 parameter to the message.
509 * @param p1 parameter to the message.
510 */
511 void debug(String message, Object p0, Object p1);
512
513 /**
514 * Logs a message with parameters at debug level.
515 *
516 * @param message the message to log; the format depends on the message factory.
517 * @param p0 parameter to the message.
518 * @param p1 parameter to the message.
519 * @param p2 parameter to the message.
520 */
521 void debug(String message, Object p0, Object p1, Object p2);
522
523 /**
524 * Logs a message with parameters at debug level.
525 *
526 * @param message the message to log; the format depends on the message factory.
527 * @param p0 parameter to the message.
528 * @param p1 parameter to the message.
529 * @param p2 parameter to the message.
530 * @param p3 parameter to the message.
531 */
532 void debug(String message, Object p0, Object p1, Object p2, Object p3);
533
534 /**
535 * Logs a message with parameters at debug level.
536 *
537 * @param message the message to log; the format depends on the message factory.
538 * @param p0 parameter to the message.
539 * @param p1 parameter to the message.
540 * @param p2 parameter to the message.
541 * @param p3 parameter to the message.
542 * @param p4 parameter to the message.
543 */
544 void debug(String message, Object p0, Object p1, Object p2, Object p3, Object p4);
545
546 /**
547 * Logs a message with parameters at debug level.
548 *
549 * @param message the message to log; the format depends on the message factory.
550 * @param p0 parameter to the message.
551 * @param p1 parameter to the message.
552 * @param p2 parameter to the message.
553 * @param p3 parameter to the message.
554 * @param p4 parameter to the message.
555 * @param p5 parameter to the message.
556 */
557 void debug(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);
558
559 /**
560 * Logs a message with parameters at debug level.
561 *
562 * @param message the message to log; the format depends on the message factory.
563 * @param p0 parameter to the message.
564 * @param p1 parameter to the message.
565 * @param p2 parameter to the message.
566 * @param p3 parameter to the message.
567 * @param p4 parameter to the message.
568 * @param p5 parameter to the message.
569 * @param p6 parameter to the message.
570 */
571 void debug(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6);
572
573 /**
574 * Logs a message with parameters at debug level.
575 *
576 * @param message the message to log; the format depends on the message factory.
577 * @param p0 parameter to the message.
578 * @param p1 parameter to the message.
579 * @param p2 parameter to the message.
580 * @param p3 parameter to the message.
581 * @param p4 parameter to the message.
582 * @param p5 parameter to the message.
583 * @param p6 parameter to the message.
584 * @param p7 parameter to the message.
585 */
586 void debug(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7);
587
588 /**
589 * Logs a message with parameters at debug level.
590 *
591 * @param message the message to log; the format depends on the message factory.
592 * @param p0 parameter to the message.
593 * @param p1 parameter to the message.
594 * @param p2 parameter to the message.
595 * @param p3 parameter to the message.
596 * @param p4 parameter to the message.
597 * @param p5 parameter to the message.
598 * @param p6 parameter to the message.
599 * @param p7 parameter to the message.
600 * @param p8 parameter to the message.
601 */
602 void debug(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,
603 Object p8);
604
605 /**
606 * Logs a message with parameters at debug level.
607 *
608 * @param message the message to log; the format depends on the message factory.
609 * @param p0 parameter to the message.
610 * @param p1 parameter to the message.
611 * @param p2 parameter to the message.
612 * @param p3 parameter to the message.
613 * @param p4 parameter to the message.
614 * @param p5 parameter to the message.
615 * @param p6 parameter to the message.
616 * @param p7 parameter to the message.
617 * @param p8 parameter to the message.
618 * @param p9 parameter to the message.
619 */
620 void debug(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,
621 Object p8, Object p9);
622
623 /**
624 * Logs entry to a method. Used when the method in question has no parameters or when the parameters should not be
625 * logged.
626 * @deprecated Use {@link #traceEntry()} instead which performs the same function.
627 */
628 @Deprecated
629 void entry();
630
631 /**
632 * Logs entry to a method along with its parameters (consider using one of the {@code traceEntry(...)} methods instead.)
633 * <p>
634 * For example:
635 * </p>
636 * <pre>
637 * public void doSomething(String foo, int bar) {
638 * LOGGER.entry(foo, bar);
639 * // do something
640 * }
641 * </pre>
642 * <p>
643 * The use of methods such as this are more effective when combined with aspect-oriented programming or other
644 * bytecode manipulation tools. It can be rather tedious (and messy) to use this type of method manually.
645 * </p>
646 *
647 * @param params The parameters to the method.
648 * @deprecated Use {@link #traceEntry(String, Object...)} instead which performs the same function.
649 */
650 @Deprecated
651 void entry(Object... params);
652
653 /**
654 * Logs a message with the specific Marker at the {@link Level#ERROR ERROR} level.
655 *
656 * @param marker the marker data specific to this log statement
657 * @param msg the message string to be logged
658 */
659 void error(Marker marker, Message msg);
660
661 /**
662 * Logs a message with the specific Marker at the {@link Level#ERROR ERROR} level.
663 *
664 * @param marker the marker data specific to this log statement
665 * @param msg the message string to be logged
666 * @param t A Throwable or null.
667 */
668 void error(Marker marker, Message msg, Throwable t);
669
670 /**
671 * Logs a message which is only to be constructed if the logging level is the {@link Level#ERROR ERROR} level with
672 * the specified Marker. The {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the
673 * {@code Message}.
674 *
675 * @param marker the marker data specific to this log statement
676 * @param msgSupplier A function, which when called, produces the desired log message.
677 * @since 2.4
678 */
679 void error(Marker marker, MessageSupplier msgSupplier);
680
681 /**
682 * Logs a message (only to be constructed if the logging level is the {@link Level#ERROR ERROR} level) with the
683 * specified Marker and including the stack trace of the {@link Throwable} <code>t</code> passed as parameter. The
684 * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.
685 *
686 * @param marker the marker data specific to this log statement
687 * @param msgSupplier A function, which when called, produces the desired log message.
688 * @param t A Throwable or null.
689 * @since 2.4
690 */
691 void error(Marker marker, MessageSupplier msgSupplier, Throwable t);
692
693 /**
694 * Logs a message CharSequence with the {@link Level#ERROR ERROR} level.
695 *
696 * @param marker the marker data specific to this log statement.
697 * @param message the message CharSequence to log.
698 */
699 void error(Marker marker, CharSequence message);
700
701 /**
702 * Logs a CharSequence at the {@link Level#ERROR ERROR} level including the stack trace of the {@link Throwable}
703 * <code>t</code> passed as parameter.
704 *
705 * @param marker the marker data specific to this log statement.
706 * @param message the message CharSequence to log.
707 * @param t the exception to log, including its stack trace.
708 */
709 void error(Marker marker, CharSequence message, Throwable t);
710
711 /**
712 * Logs a message object with the {@link Level#ERROR ERROR} level.
713 *
714 * @param marker the marker data specific to this log statement.
715 * @param message the message object to log.
716 */
717 void error(Marker marker, Object message);
718
719 /**
720 * Logs a message at the {@link Level#ERROR ERROR} level including the stack trace of the {@link Throwable}
721 * <code>t</code> passed as parameter.
722 *
723 * @param marker the marker data specific to this log statement.
724 * @param message the message object to log.
725 * @param t the exception to log, including its stack trace.
726 */
727 void error(Marker marker, Object message, Throwable t);
728
729 /**
730 * Logs a message object with the {@link Level#ERROR ERROR} level.
731 *
732 * @param marker the marker data specific to this log statement.
733 * @param message the message object to log.
734 */
735 void error(Marker marker, String message);
736
737 /**
738 * Logs a message with parameters at the {@link Level#ERROR ERROR} level.
739 *
740 * @param marker the marker data specific to this log statement.
741 * @param message the message to log; the format depends on the message factory.
742 * @param params parameters to the message.
743 * @see #getMessageFactory()
744 */
745 void error(Marker marker, String message, Object... params);
746
747 /**
748 * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#ERROR
749 * ERROR} level.
750 *
751 * @param marker the marker data specific to this log statement
752 * @param message the message to log; the format depends on the message factory.
753 * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.
754 * @since 2.4
755 */
756 void error(Marker marker, String message, Supplier<?>... paramSuppliers);
757
758 /**
759 * Logs a message at the {@link Level#ERROR ERROR} level including the stack trace of the {@link Throwable}
760 * <code>t</code> passed as parameter.
761 *
762 * @param marker the marker data specific to this log statement.
763 * @param message the message object to log.
764 * @param t the exception to log, including its stack trace.
765 */
766 void error(Marker marker, String message, Throwable t);
767
768 /**
769 * Logs a message which is only to be constructed if the logging level is the {@link Level#ERROR ERROR} level with
770 * the specified Marker.
771 *
772 * @param marker the marker data specific to this log statement
773 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
774 * message factory.
775 * @since 2.4
776 */
777 void error(Marker marker, Supplier<?> msgSupplier);
778
779 /**
780 * Logs a message (only to be constructed if the logging level is the {@link Level#ERROR ERROR} level) with the
781 * specified Marker and including the stack trace of the {@link Throwable} <code>t</code> passed as parameter.
782 *
783 * @param marker the marker data specific to this log statement
784 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
785 * message factory.
786 * @param t A Throwable or null.
787 * @since 2.4
788 */
789 void error(Marker marker, Supplier<?> msgSupplier, Throwable t);
790
791 /**
792 * Logs a message with the specific Marker at the {@link Level#ERROR ERROR} level.
793 *
794 * @param msg the message string to be logged
795 */
796 void error(Message msg);
797
798 /**
799 * Logs a message with the specific Marker at the {@link Level#ERROR ERROR} level.
800 *
801 * @param msg the message string to be logged
802 * @param t A Throwable or null.
803 */
804 void error(Message msg, Throwable t);
805
806 /**
807 * Logs a message which is only to be constructed if the logging level is the {@link Level#ERROR ERROR} level. The
808 * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.
809 *
810 * @param msgSupplier A function, which when called, produces the desired log message.
811 * @since 2.4
812 */
813 void error(MessageSupplier msgSupplier);
814
815 /**
816 * Logs a message (only to be constructed if the logging level is the {@link Level#ERROR ERROR} level) including the
817 * stack trace of the {@link Throwable} <code>t</code> passed as parameter. The {@code MessageSupplier} may or may
818 * not use the {@link MessageFactory} to construct the {@code Message}.
819 *
820 * @param msgSupplier A function, which when called, produces the desired log message.
821 * @param t the exception to log, including its stack trace.
822 * @since 2.4
823 */
824 void error(MessageSupplier msgSupplier, Throwable t);
825
826 /**
827 * Logs a message CharSequence with the {@link Level#ERROR ERROR} level.
828 *
829 * @param message the message CharSequence to log.
830 */
831 void error(CharSequence message);
832
833 /**
834 * Logs a CharSequence at the {@link Level#ERROR ERROR} level including the stack trace of the {@link Throwable}
835 * <code>t</code> passed as parameter.
836 *
837 * @param message the message CharSequence to log.
838 * @param t the exception to log, including its stack trace.
839 */
840 void error(CharSequence message, Throwable t);
841
842 /**
843 * Logs a message object with the {@link Level#ERROR ERROR} level.
844 *
845 * @param message the message object to log.
846 */
847 void error(Object message);
848
849 /**
850 * Logs a message at the {@link Level#ERROR ERROR} level including the stack trace of the {@link Throwable}
851 * <code>t</code> passed as parameter.
852 *
853 * @param message the message object to log.
854 * @param t the exception to log, including its stack trace.
855 */
856 void error(Object message, Throwable t);
857
858 /**
859 * Logs a message object with the {@link Level#ERROR ERROR} level.
860 *
861 * @param message the message string to log.
862 */
863 void error(String message);
864
865 /**
866 * Logs a message with parameters at the {@link Level#ERROR ERROR} level.
867 *
868 * @param message the message to log; the format depends on the message factory.
869 * @param params parameters to the message.
870 * @see #getMessageFactory()
871 */
872 void error(String message, Object... params);
873
874 /**
875 * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#ERROR
876 * ERROR} level.
877 *
878 * @param message the message to log; the format depends on the message factory.
879 * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.
880 * @since 2.4
881 */
882 void error(String message, Supplier<?>... paramSuppliers);
883
884 /**
885 * Logs a message at the {@link Level#ERROR ERROR} level including the stack trace of the {@link Throwable}
886 * <code>t</code> passed as parameter.
887 *
888 * @param message the message object to log.
889 * @param t the exception to log, including its stack trace.
890 */
891 void error(String message, Throwable t);
892
893 /**
894 * Logs a message which is only to be constructed if the logging level is the {@link Level#ERROR ERROR} level.
895 *
896 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
897 * message factory.
898 * @since 2.4
899 */
900 void error(Supplier<?> msgSupplier);
901
902 /**
903 * Logs a message (only to be constructed if the logging level is the {@link Level#ERROR ERROR} level) including the
904 * stack trace of the {@link Throwable} <code>t</code> passed as parameter.
905 *
906 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
907 * message factory.
908 * @param t the exception to log, including its stack trace.
909 * @since 2.4
910 */
911 void error(Supplier<?> msgSupplier, Throwable t);
912
913 /**
914 * Logs a message with parameters at error level.
915 *
916 * @param marker the marker data specific to this log statement
917 * @param message the message to log; the format depends on the message factory.
918 * @param p0 parameter to the message.
919 */
920 void error(Marker marker, String message, Object p0);
921
922 /**
923 * Logs a message with parameters at error level.
924 *
925 * @param marker the marker data specific to this log statement
926 * @param message the message to log; the format depends on the message factory.
927 * @param p0 parameter to the message.
928 * @param p1 parameter to the message.
929 */
930 void error(Marker marker, String message, Object p0, Object p1);
931
932 /**
933 * Logs a message with parameters at error level.
934 *
935 * @param marker the marker data specific to this log statement
936 * @param message the message to log; the format depends on the message factory.
937 * @param p0 parameter to the message.
938 * @param p1 parameter to the message.
939 * @param p2 parameter to the message.
940 */
941 void error(Marker marker, String message, Object p0, Object p1, Object p2);
942
943 /**
944 * Logs a message with parameters at error level.
945 *
946 * @param marker the marker data specific to this log statement
947 * @param message the message to log; the format depends on the message factory.
948 * @param p0 parameter to the message.
949 * @param p1 parameter to the message.
950 * @param p2 parameter to the message.
951 * @param p3 parameter to the message.
952 */
953 void error(Marker marker, String message, Object p0, Object p1, Object p2, Object p3);
954
955 /**
956 * Logs a message with parameters at error level.
957 *
958 * @param marker the marker data specific to this log statement
959 * @param message the message to log; the format depends on the message factory.
960 * @param p0 parameter to the message.
961 * @param p1 parameter to the message.
962 * @param p2 parameter to the message.
963 * @param p3 parameter to the message.
964 * @param p4 parameter to the message.
965 */
966 void error(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4);
967
968 /**
969 * Logs a message with parameters at error level.
970 *
971 * @param marker the marker data specific to this log statement
972 * @param message the message to log; the format depends on the message factory.
973 * @param p0 parameter to the message.
974 * @param p1 parameter to the message.
975 * @param p2 parameter to the message.
976 * @param p3 parameter to the message.
977 * @param p4 parameter to the message.
978 * @param p5 parameter to the message.
979 */
980 void error(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);
981
982 /**
983 * Logs a message with parameters at error level.
984 *
985 * @param marker the marker data specific to this log statement
986 * @param message the message to log; the format depends on the message factory.
987 * @param p0 parameter to the message.
988 * @param p1 parameter to the message.
989 * @param p2 parameter to the message.
990 * @param p3 parameter to the message.
991 * @param p4 parameter to the message.
992 * @param p5 parameter to the message.
993 * @param p6 parameter to the message.
994 */
995 void error(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5,
996 Object p6);
997
998 /**
999 * Logs a message with parameters at error level.
1000 *
1001 * @param marker the marker data specific to this log statement
1002 * @param message the message to log; the format depends on the message factory.
1003 * @param p0 parameter to the message.
1004 * @param p1 parameter to the message.
1005 * @param p2 parameter to the message.
1006 * @param p3 parameter to the message.
1007 * @param p4 parameter to the message.
1008 * @param p5 parameter to the message.
1009 * @param p6 parameter to the message.
1010 * @param p7 parameter to the message.
1011 */
1012 void error(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
1013 Object p7);
1014
1015 /**
1016 * Logs a message with parameters at error level.
1017 *
1018 * @param marker the marker data specific to this log statement
1019 * @param message the message to log; the format depends on the message factory.
1020 * @param p0 parameter to the message.
1021 * @param p1 parameter to the message.
1022 * @param p2 parameter to the message.
1023 * @param p3 parameter to the message.
1024 * @param p4 parameter to the message.
1025 * @param p5 parameter to the message.
1026 * @param p6 parameter to the message.
1027 * @param p7 parameter to the message.
1028 * @param p8 parameter to the message.
1029 */
1030 void error(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
1031 Object p7, Object p8);
1032
1033 /**
1034 * Logs a message with parameters at error level.
1035 *
1036 * @param marker the marker data specific to this log statement
1037 * @param message the message to log; the format depends on the message factory.
1038 * @param p0 parameter to the message.
1039 * @param p1 parameter to the message.
1040 * @param p2 parameter to the message.
1041 * @param p3 parameter to the message.
1042 * @param p4 parameter to the message.
1043 * @param p5 parameter to the message.
1044 * @param p6 parameter to the message.
1045 * @param p7 parameter to the message.
1046 * @param p8 parameter to the message.
1047 * @param p9 parameter to the message.
1048 */
1049 void error(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
1050 Object p7, Object p8, Object p9);
1051
1052 /**
1053 * Logs a message with parameters at error level.
1054 *
1055 * @param message the message to log; the format depends on the message factory.
1056 * @param p0 parameter to the message.
1057 */
1058 void error(String message, Object p0);
1059
1060 /**
1061 * Logs a message with parameters at error level.
1062 *
1063 * @param message the message to log; the format depends on the message factory.
1064 * @param p0 parameter to the message.
1065 * @param p1 parameter to the message.
1066 */
1067 void error(String message, Object p0, Object p1);
1068
1069 /**
1070 * Logs a message with parameters at error level.
1071 *
1072 * @param message the message to log; the format depends on the message factory.
1073 * @param p0 parameter to the message.
1074 * @param p1 parameter to the message.
1075 * @param p2 parameter to the message.
1076 */
1077 void error(String message, Object p0, Object p1, Object p2);
1078
1079 /**
1080 * Logs a message with parameters at error level.
1081 *
1082 * @param message the message to log; the format depends on the message factory.
1083 * @param p0 parameter to the message.
1084 * @param p1 parameter to the message.
1085 * @param p2 parameter to the message.
1086 * @param p3 parameter to the message.
1087 */
1088 void error(String message, Object p0, Object p1, Object p2, Object p3);
1089
1090 /**
1091 * Logs a message with parameters at error level.
1092 *
1093 * @param message the message to log; the format depends on the message factory.
1094 * @param p0 parameter to the message.
1095 * @param p1 parameter to the message.
1096 * @param p2 parameter to the message.
1097 * @param p3 parameter to the message.
1098 * @param p4 parameter to the message.
1099 */
1100 void error(String message, Object p0, Object p1, Object p2, Object p3, Object p4);
1101
1102 /**
1103 * Logs a message with parameters at error level.
1104 *
1105 * @param message the message to log; the format depends on the message factory.
1106 * @param p0 parameter to the message.
1107 * @param p1 parameter to the message.
1108 * @param p2 parameter to the message.
1109 * @param p3 parameter to the message.
1110 * @param p4 parameter to the message.
1111 * @param p5 parameter to the message.
1112 */
1113 void error(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);
1114
1115 /**
1116 * Logs a message with parameters at error level.
1117 *
1118 * @param message the message to log; the format depends on the message factory.
1119 * @param p0 parameter to the message.
1120 * @param p1 parameter to the message.
1121 * @param p2 parameter to the message.
1122 * @param p3 parameter to the message.
1123 * @param p4 parameter to the message.
1124 * @param p5 parameter to the message.
1125 * @param p6 parameter to the message.
1126 */
1127 void error(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6);
1128
1129 /**
1130 * Logs a message with parameters at error level.
1131 *
1132 * @param message the message to log; the format depends on the message factory.
1133 * @param p0 parameter to the message.
1134 * @param p1 parameter to the message.
1135 * @param p2 parameter to the message.
1136 * @param p3 parameter to the message.
1137 * @param p4 parameter to the message.
1138 * @param p5 parameter to the message.
1139 * @param p6 parameter to the message.
1140 * @param p7 parameter to the message.
1141 */
1142 void error(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7);
1143
1144 /**
1145 * Logs a message with parameters at error level.
1146 *
1147 * @param message the message to log; the format depends on the message factory.
1148 * @param p0 parameter to the message.
1149 * @param p1 parameter to the message.
1150 * @param p2 parameter to the message.
1151 * @param p3 parameter to the message.
1152 * @param p4 parameter to the message.
1153 * @param p5 parameter to the message.
1154 * @param p6 parameter to the message.
1155 * @param p7 parameter to the message.
1156 * @param p8 parameter to the message.
1157 */
1158 void error(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,
1159 Object p8);
1160
1161 /**
1162 * Logs a message with parameters at error level.
1163 *
1164 * @param message the message to log; the format depends on the message factory.
1165 * @param p0 parameter to the message.
1166 * @param p1 parameter to the message.
1167 * @param p2 parameter to the message.
1168 * @param p3 parameter to the message.
1169 * @param p4 parameter to the message.
1170 * @param p5 parameter to the message.
1171 * @param p6 parameter to the message.
1172 * @param p7 parameter to the message.
1173 * @param p8 parameter to the message.
1174 * @param p9 parameter to the message.
1175 */
1176 void error(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,
1177 Object p8, Object p9);
1178
1179 /**
1180 * Logs exit from a method. Used for methods that do not return anything.
1181 * @deprecated Use {@link #traceExit()} instead which performs the same function.
1182 */
1183 @Deprecated
1184 void exit();
1185
1186 /**
1187 * Logs exiting from a method with the result. This may be coded as:
1188 *
1189 * <pre>
1190 * return LOGGER.exit(myResult);
1191 * </pre>
1192 *
1193 * @param <R> The type of the parameter and object being returned.
1194 * @param result The result being returned from the method call.
1195 * @return the result.
1196 * @deprecated Use {@link #traceExit(Object)} instead which performs the same function.
1197 */
1198 @Deprecated
1199 <R> R exit(R result);
1200
1201 /**
1202 * Logs a message with the specific Marker at the {@link Level#FATAL FATAL} level.
1203 *
1204 * @param marker the marker data specific to this log statement
1205 * @param msg the message string to be logged
1206 */
1207 void fatal(Marker marker, Message msg);
1208
1209 /**
1210 * Logs a message with the specific Marker at the {@link Level#FATAL FATAL} level.
1211 *
1212 * @param marker the marker data specific to this log statement
1213 * @param msg the message string to be logged
1214 * @param t A Throwable or null.
1215 */
1216 void fatal(Marker marker, Message msg, Throwable t);
1217
1218 /**
1219 * Logs a message which is only to be constructed if the logging level is the {@link Level#FATAL FATAL} level with
1220 * the specified Marker. The {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the
1221 * {@code Message}.
1222 *
1223 * @param marker the marker data specific to this log statement
1224 * @param msgSupplier A function, which when called, produces the desired log message.
1225 * @since 2.4
1226 */
1227 void fatal(Marker marker, MessageSupplier msgSupplier);
1228
1229 /**
1230 * Logs a message (only to be constructed if the logging level is the {@link Level#FATAL FATAL} level) with the
1231 * specified Marker and including the stack trace of the {@link Throwable} <code>t</code> passed as parameter. The
1232 * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.
1233 *
1234 * @param marker the marker data specific to this log statement
1235 * @param msgSupplier A function, which when called, produces the desired log message.
1236 * @param t A Throwable or null.
1237 * @since 2.4
1238 */
1239 void fatal(Marker marker, MessageSupplier msgSupplier, Throwable t);
1240
1241 /**
1242 * Logs a message CharSequence with the {@link Level#FATAL FATAL} level.
1243 *
1244 * @param marker The marker data specific to this log statement.
1245 * @param message the message CharSequence to log.
1246 */
1247 void fatal(Marker marker, CharSequence message);
1248
1249 /**
1250 * Logs a CharSequence at the {@link Level#FATAL FATAL} level including the stack trace of the {@link Throwable}
1251 * <code>t</code> passed as parameter.
1252 *
1253 * @param marker The marker data specific to this log statement.
1254 * @param message the message CharSequence to log.
1255 * @param t the exception to log, including its stack trace.
1256 */
1257 void fatal(Marker marker, CharSequence message, Throwable t);
1258
1259 /**
1260 * Logs a message object with the {@link Level#FATAL FATAL} level.
1261 *
1262 * @param marker The marker data specific to this log statement.
1263 * @param message the message object to log.
1264 */
1265 void fatal(Marker marker, Object message);
1266
1267 /**
1268 * Logs a message at the {@link Level#FATAL FATAL} level including the stack trace of the {@link Throwable}
1269 * <code>t</code> passed as parameter.
1270 *
1271 * @param marker The marker data specific to this log statement.
1272 * @param message the message object to log.
1273 * @param t the exception to log, including its stack trace.
1274 */
1275 void fatal(Marker marker, Object message, Throwable t);
1276
1277 /**
1278 * Logs a message object with the {@link Level#FATAL FATAL} level.
1279 *
1280 * @param marker The marker data specific to this log statement.
1281 * @param message the message object to log.
1282 */
1283 void fatal(Marker marker, String message);
1284
1285 /**
1286 * Logs a message with parameters at the {@link Level#FATAL FATAL} level.
1287 *
1288 * @param marker The marker data specific to this log statement.
1289 * @param message the message to log; the format depends on the message factory.
1290 * @param params parameters to the message.
1291 * @see #getMessageFactory()
1292 */
1293 void fatal(Marker marker, String message, Object... params);
1294
1295 /**
1296 * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#FATAL
1297 * FATAL} level.
1298 *
1299 * @param marker the marker data specific to this log statement
1300 * @param message the message to log; the format depends on the message factory.
1301 * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.
1302 * @since 2.4
1303 */
1304 void fatal(Marker marker, String message, Supplier<?>... paramSuppliers);
1305
1306 /**
1307 * Logs a message at the {@link Level#FATAL FATAL} level including the stack trace of the {@link Throwable}
1308 * <code>t</code> passed as parameter.
1309 *
1310 * @param marker The marker data specific to this log statement.
1311 * @param message the message object to log.
1312 * @param t the exception to log, including its stack trace.
1313 */
1314 void fatal(Marker marker, String message, Throwable t);
1315
1316 /**
1317 * Logs a message which is only to be constructed if the logging level is the {@link Level#FATAL FATAL} level with
1318 * the specified Marker.
1319 *
1320 * @param marker the marker data specific to this log statement
1321 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
1322 * message factory.
1323 * @since 2.4
1324 */
1325 void fatal(Marker marker, Supplier<?> msgSupplier);
1326
1327 /**
1328 * Logs a message (only to be constructed if the logging level is the {@link Level#FATAL FATAL} level) with the
1329 * specified Marker and including the stack trace of the {@link Throwable} <code>t</code> passed as parameter.
1330 *
1331 * @param marker the marker data specific to this log statement
1332 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
1333 * message factory.
1334 * @param t A Throwable or null.
1335 * @since 2.4
1336 */
1337 void fatal(Marker marker, Supplier<?> msgSupplier, Throwable t);
1338
1339 /**
1340 * Logs a message with the specific Marker at the {@link Level#FATAL FATAL} level.
1341 *
1342 * @param msg the message string to be logged
1343 */
1344 void fatal(Message msg);
1345
1346 /**
1347 * Logs a message with the specific Marker at the {@link Level#FATAL FATAL} level.
1348 *
1349 * @param msg the message string to be logged
1350 * @param t A Throwable or null.
1351 */
1352 void fatal(Message msg, Throwable t);
1353
1354 /**
1355 * Logs a message which is only to be constructed if the logging level is the {@link Level#FATAL FATAL} level. The
1356 * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.
1357 *
1358 * @param msgSupplier A function, which when called, produces the desired log message.
1359 * @since 2.4
1360 */
1361 void fatal(MessageSupplier msgSupplier);
1362
1363 /**
1364 * Logs a message (only to be constructed if the logging level is the {@link Level#FATAL FATAL} level) including the
1365 * stack trace of the {@link Throwable} <code>t</code> passed as parameter. The {@code MessageSupplier} may or may
1366 * not use the {@link MessageFactory} to construct the {@code Message}.
1367 *
1368 * @param msgSupplier A function, which when called, produces the desired log message.
1369 * @param t the exception to log, including its stack trace.
1370 * @since 2.4
1371 */
1372 void fatal(MessageSupplier msgSupplier, Throwable t);
1373
1374 /**
1375 * Logs a message CharSequence with the {@link Level#FATAL FATAL} level.
1376 *
1377 * @param message the message CharSequence to log.
1378 */
1379 void fatal(CharSequence message);
1380
1381 /**
1382 * Logs a CharSequence at the {@link Level#FATAL FATAL} level including the stack trace of the {@link Throwable}
1383 * <code>t</code> passed as parameter.
1384 *
1385 * @param message the message CharSequence to log.
1386 * @param t the exception to log, including its stack trace.
1387 */
1388 void fatal(CharSequence message, Throwable t);
1389
1390 /**
1391 * Logs a message object with the {@link Level#FATAL FATAL} level.
1392 *
1393 * @param message the message object to log.
1394 */
1395 void fatal(Object message);
1396
1397 /**
1398 * Logs a message at the {@link Level#FATAL FATAL} level including the stack trace of the {@link Throwable}
1399 * <code>t</code> passed as parameter.
1400 *
1401 * @param message the message object to log.
1402 * @param t the exception to log, including its stack trace.
1403 */
1404 void fatal(Object message, Throwable t);
1405
1406 /**
1407 * Logs a message object with the {@link Level#FATAL FATAL} level.
1408 *
1409 * @param message the message string to log.
1410 */
1411 void fatal(String message);
1412
1413 /**
1414 * Logs a message with parameters at the {@link Level#FATAL FATAL} level.
1415 *
1416 * @param message the message to log; the format depends on the message factory.
1417 * @param params parameters to the message.
1418 * @see #getMessageFactory()
1419 */
1420 void fatal(String message, Object... params);
1421
1422 /**
1423 * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#FATAL
1424 * FATAL} level.
1425 *
1426 * @param message the message to log; the format depends on the message factory.
1427 * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.
1428 * @since 2.4
1429 */
1430 void fatal(String message, Supplier<?>... paramSuppliers);
1431
1432 /**
1433 * Logs a message at the {@link Level#FATAL FATAL} level including the stack trace of the {@link Throwable}
1434 * <code>t</code> passed as parameter.
1435 *
1436 * @param message the message object to log.
1437 * @param t the exception to log, including its stack trace.
1438 */
1439 void fatal(String message, Throwable t);
1440
1441 /**
1442 * Logs a message which is only to be constructed if the logging level is the {@link Level#FATAL FATAL} level.
1443 *
1444 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
1445 * message factory.
1446 * @since 2.4
1447 */
1448 void fatal(Supplier<?> msgSupplier);
1449
1450 /**
1451 * Logs a message (only to be constructed if the logging level is the {@link Level#FATAL FATAL} level) including the
1452 * stack trace of the {@link Throwable} <code>t</code> passed as parameter.
1453 *
1454 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
1455 * message factory.
1456 * @param t the exception to log, including its stack trace.
1457 * @since 2.4
1458 */
1459 void fatal(Supplier<?> msgSupplier, Throwable t);
1460
1461 /**
1462 * Logs a message with parameters at fatal level.
1463 *
1464 * @param marker the marker data specific to this log statement
1465 * @param message the message to log; the format depends on the message factory.
1466 * @param p0 parameter to the message.
1467 */
1468 void fatal(Marker marker, String message, Object p0);
1469
1470 /**
1471 * Logs a message with parameters at fatal level.
1472 *
1473 * @param marker the marker data specific to this log statement
1474 * @param message the message to log; the format depends on the message factory.
1475 * @param p0 parameter to the message.
1476 * @param p1 parameter to the message.
1477 */
1478 void fatal(Marker marker, String message, Object p0, Object p1);
1479
1480 /**
1481 * Logs a message with parameters at fatal level.
1482 *
1483 * @param marker the marker data specific to this log statement
1484 * @param message the message to log; the format depends on the message factory.
1485 * @param p0 parameter to the message.
1486 * @param p1 parameter to the message.
1487 * @param p2 parameter to the message.
1488 */
1489 void fatal(Marker marker, String message, Object p0, Object p1, Object p2);
1490
1491 /**
1492 * Logs a message with parameters at fatal level.
1493 *
1494 * @param marker the marker data specific to this log statement
1495 * @param message the message to log; the format depends on the message factory.
1496 * @param p0 parameter to the message.
1497 * @param p1 parameter to the message.
1498 * @param p2 parameter to the message.
1499 * @param p3 parameter to the message.
1500 */
1501 void fatal(Marker marker, String message, Object p0, Object p1, Object p2, Object p3);
1502
1503 /**
1504 * Logs a message with parameters at fatal level.
1505 *
1506 * @param marker the marker data specific to this log statement
1507 * @param message the message to log; the format depends on the message factory.
1508 * @param p0 parameter to the message.
1509 * @param p1 parameter to the message.
1510 * @param p2 parameter to the message.
1511 * @param p3 parameter to the message.
1512 * @param p4 parameter to the message.
1513 */
1514 void fatal(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4);
1515
1516 /**
1517 * Logs a message with parameters at fatal level.
1518 *
1519 * @param marker the marker data specific to this log statement
1520 * @param message the message to log; the format depends on the message factory.
1521 * @param p0 parameter to the message.
1522 * @param p1 parameter to the message.
1523 * @param p2 parameter to the message.
1524 * @param p3 parameter to the message.
1525 * @param p4 parameter to the message.
1526 * @param p5 parameter to the message.
1527 */
1528 void fatal(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);
1529
1530 /**
1531 * Logs a message with parameters at fatal level.
1532 *
1533 * @param marker the marker data specific to this log statement
1534 * @param message the message to log; the format depends on the message factory.
1535 * @param p0 parameter to the message.
1536 * @param p1 parameter to the message.
1537 * @param p2 parameter to the message.
1538 * @param p3 parameter to the message.
1539 * @param p4 parameter to the message.
1540 * @param p5 parameter to the message.
1541 * @param p6 parameter to the message.
1542 */
1543 void fatal(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5,
1544 Object p6);
1545
1546 /**
1547 * Logs a message with parameters at fatal level.
1548 *
1549 * @param marker the marker data specific to this log statement
1550 * @param message the message to log; the format depends on the message factory.
1551 * @param p0 parameter to the message.
1552 * @param p1 parameter to the message.
1553 * @param p2 parameter to the message.
1554 * @param p3 parameter to the message.
1555 * @param p4 parameter to the message.
1556 * @param p5 parameter to the message.
1557 * @param p6 parameter to the message.
1558 * @param p7 parameter to the message.
1559 */
1560 void fatal(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
1561 Object p7);
1562
1563 /**
1564 * Logs a message with parameters at fatal level.
1565 *
1566 * @param marker the marker data specific to this log statement
1567 * @param message the message to log; the format depends on the message factory.
1568 * @param p0 parameter to the message.
1569 * @param p1 parameter to the message.
1570 * @param p2 parameter to the message.
1571 * @param p3 parameter to the message.
1572 * @param p4 parameter to the message.
1573 * @param p5 parameter to the message.
1574 * @param p6 parameter to the message.
1575 * @param p7 parameter to the message.
1576 * @param p8 parameter to the message.
1577 */
1578 void fatal(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
1579 Object p7, Object p8);
1580
1581 /**
1582 * Logs a message with parameters at fatal level.
1583 *
1584 * @param marker the marker data specific to this log statement
1585 * @param message the message to log; the format depends on the message factory.
1586 * @param p0 parameter to the message.
1587 * @param p1 parameter to the message.
1588 * @param p2 parameter to the message.
1589 * @param p3 parameter to the message.
1590 * @param p4 parameter to the message.
1591 * @param p5 parameter to the message.
1592 * @param p6 parameter to the message.
1593 * @param p7 parameter to the message.
1594 * @param p8 parameter to the message.
1595 * @param p9 parameter to the message.
1596 */
1597 void fatal(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
1598 Object p7, Object p8, Object p9);
1599
1600 /**
1601 * Logs a message with parameters at fatal level.
1602 *
1603 * @param message the message to log; the format depends on the message factory.
1604 * @param p0 parameter to the message.
1605 */
1606 void fatal(String message, Object p0);
1607
1608 /**
1609 * Logs a message with parameters at fatal level.
1610 *
1611 * @param message the message to log; the format depends on the message factory.
1612 * @param p0 parameter to the message.
1613 * @param p1 parameter to the message.
1614 */
1615 void fatal(String message, Object p0, Object p1);
1616
1617 /**
1618 * Logs a message with parameters at fatal level.
1619 *
1620 * @param message the message to log; the format depends on the message factory.
1621 * @param p0 parameter to the message.
1622 * @param p1 parameter to the message.
1623 * @param p2 parameter to the message.
1624 */
1625 void fatal(String message, Object p0, Object p1, Object p2);
1626
1627 /**
1628 * Logs a message with parameters at fatal level.
1629 *
1630 * @param message the message to log; the format depends on the message factory.
1631 * @param p0 parameter to the message.
1632 * @param p1 parameter to the message.
1633 * @param p2 parameter to the message.
1634 * @param p3 parameter to the message.
1635 */
1636 void fatal(String message, Object p0, Object p1, Object p2, Object p3);
1637
1638 /**
1639 * Logs a message with parameters at fatal level.
1640 *
1641 * @param message the message to log; the format depends on the message factory.
1642 * @param p0 parameter to the message.
1643 * @param p1 parameter to the message.
1644 * @param p2 parameter to the message.
1645 * @param p3 parameter to the message.
1646 * @param p4 parameter to the message.
1647 */
1648 void fatal(String message, Object p0, Object p1, Object p2, Object p3, Object p4);
1649
1650 /**
1651 * Logs a message with parameters at fatal level.
1652 *
1653 * @param message the message to log; the format depends on the message factory.
1654 * @param p0 parameter to the message.
1655 * @param p1 parameter to the message.
1656 * @param p2 parameter to the message.
1657 * @param p3 parameter to the message.
1658 * @param p4 parameter to the message.
1659 * @param p5 parameter to the message.
1660 */
1661 void fatal(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);
1662
1663 /**
1664 * Logs a message with parameters at fatal level.
1665 *
1666 * @param message the message to log; the format depends on the message factory.
1667 * @param p0 parameter to the message.
1668 * @param p1 parameter to the message.
1669 * @param p2 parameter to the message.
1670 * @param p3 parameter to the message.
1671 * @param p4 parameter to the message.
1672 * @param p5 parameter to the message.
1673 * @param p6 parameter to the message.
1674 */
1675 void fatal(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6);
1676
1677 /**
1678 * Logs a message with parameters at fatal level.
1679 *
1680 * @param message the message to log; the format depends on the message factory.
1681 * @param p0 parameter to the message.
1682 * @param p1 parameter to the message.
1683 * @param p2 parameter to the message.
1684 * @param p3 parameter to the message.
1685 * @param p4 parameter to the message.
1686 * @param p5 parameter to the message.
1687 * @param p6 parameter to the message.
1688 * @param p7 parameter to the message.
1689 */
1690 void fatal(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7);
1691
1692 /**
1693 * Logs a message with parameters at fatal level.
1694 *
1695 * @param message the message to log; the format depends on the message factory.
1696 * @param p0 parameter to the message.
1697 * @param p1 parameter to the message.
1698 * @param p2 parameter to the message.
1699 * @param p3 parameter to the message.
1700 * @param p4 parameter to the message.
1701 * @param p5 parameter to the message.
1702 * @param p6 parameter to the message.
1703 * @param p7 parameter to the message.
1704 * @param p8 parameter to the message.
1705 */
1706 void fatal(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,
1707 Object p8);
1708
1709 /**
1710 * Logs a message with parameters at fatal level.
1711 *
1712 * @param message the message to log; the format depends on the message factory.
1713 * @param p0 parameter to the message.
1714 * @param p1 parameter to the message.
1715 * @param p2 parameter to the message.
1716 * @param p3 parameter to the message.
1717 * @param p4 parameter to the message.
1718 * @param p5 parameter to the message.
1719 * @param p6 parameter to the message.
1720 * @param p7 parameter to the message.
1721 * @param p8 parameter to the message.
1722 * @param p9 parameter to the message.
1723 */
1724 void fatal(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,
1725 Object p8, Object p9);
1726
1727 /**
1728 * Gets the Level associated with the Logger.
1729 *
1730 * @return the Level associate with the Logger.
1731 */
1732 Level getLevel();
1733
1734 /**
1735 * Gets the message factory used to convert message Objects and Strings/CharSequences into actual log Messages.
1736 *
1737 * Since version 2.6, Log4j internally uses message factories that implement the {@link MessageFactory2} interface.
1738 * From version 2.6.2, the return type of this method was changed from {@link MessageFactory} to
1739 * {@code <MF extends MessageFactory> MF}. The returned factory will always implement {@link MessageFactory2},
1740 * but the return type of this method could not be changed to {@link MessageFactory2} without breaking binary
1741 * compatibility.
1742 *
1743 * @return the message factory, as an instance of {@link MessageFactory2}
1744 */
1745 <MF extends MessageFactory> MF getMessageFactory();
1746
1747 /**
1748 * Gets the logger name.
1749 *
1750 * @return the logger name.
1751 */
1752 String getName();
1753
1754 /**
1755 * Logs a message with the specific Marker at the {@link Level#INFO INFO} level.
1756 *
1757 * @param marker the marker data specific to this log statement
1758 * @param msg the message string to be logged
1759 */
1760 void info(Marker marker, Message msg);
1761
1762 /**
1763 * Logs a message with the specific Marker at the {@link Level#INFO INFO} level.
1764 *
1765 * @param marker the marker data specific to this log statement
1766 * @param msg the message string to be logged
1767 * @param t A Throwable or null.
1768 */
1769 void info(Marker marker, Message msg, Throwable t);
1770
1771 /**
1772 * Logs a message which is only to be constructed if the logging level is the {@link Level#INFO INFO} level with the
1773 * specified Marker. The {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the
1774 * {@code Message}.
1775 *
1776 * @param marker the marker data specific to this log statement
1777 * @param msgSupplier A function, which when called, produces the desired log message.
1778 * @since 2.4
1779 */
1780 void info(Marker marker, MessageSupplier msgSupplier);
1781
1782 /**
1783 * Logs a message (only to be constructed if the logging level is the {@link Level#INFO INFO} level) with the
1784 * specified Marker and including the stack trace of the {@link Throwable} <code>t</code> passed as parameter. The
1785 * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.
1786 *
1787 * @param marker the marker data specific to this log statement
1788 * @param msgSupplier A function, which when called, produces the desired log message.
1789 * @param t A Throwable or null.
1790 * @since 2.4
1791 */
1792 void info(Marker marker, MessageSupplier msgSupplier, Throwable t);
1793
1794 /**
1795 * Logs a message CharSequence with the {@link Level#INFO INFO} level.
1796 *
1797 * @param marker the marker data specific to this log statement
1798 * @param message the message CharSequence to log.
1799 */
1800 void info(Marker marker, CharSequence message);
1801
1802 /**
1803 * Logs a CharSequence at the {@link Level#INFO INFO} level including the stack trace of the {@link Throwable}
1804 * <code>t</code> passed as parameter.
1805 *
1806 * @param marker the marker data specific to this log statement
1807 * @param message the message CharSequence to log.
1808 * @param t the exception to log, including its stack trace.
1809 */
1810 void info(Marker marker, CharSequence message, Throwable t);
1811
1812 /**
1813 * Logs a message object with the {@link Level#INFO INFO} level.
1814 *
1815 * @param marker the marker data specific to this log statement
1816 * @param message the message object to log.
1817 */
1818 void info(Marker marker, Object message);
1819
1820 /**
1821 * Logs a message at the {@link Level#INFO INFO} level including the stack trace of the {@link Throwable}
1822 * <code>t</code> passed as parameter.
1823 *
1824 * @param marker the marker data specific to this log statement
1825 * @param message the message object to log.
1826 * @param t the exception to log, including its stack trace.
1827 */
1828 void info(Marker marker, Object message, Throwable t);
1829
1830 /**
1831 * Logs a message object with the {@link Level#INFO INFO} level.
1832 *
1833 * @param marker the marker data specific to this log statement
1834 * @param message the message object to log.
1835 */
1836 void info(Marker marker, String message);
1837
1838 /**
1839 * Logs a message with parameters at the {@link Level#INFO INFO} level.
1840 *
1841 * @param marker the marker data specific to this log statement
1842 * @param message the message to log; the format depends on the message factory.
1843 * @param params parameters to the message.
1844 * @see #getMessageFactory()
1845 */
1846 void info(Marker marker, String message, Object... params);
1847
1848 /**
1849 * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#INFO
1850 * INFO} level.
1851 *
1852 * @param marker the marker data specific to this log statement
1853 * @param message the message to log; the format depends on the message factory.
1854 * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.
1855 * @since 2.4
1856 */
1857 void info(Marker marker, String message, Supplier<?>... paramSuppliers);
1858
1859 /**
1860 * Logs a message at the {@link Level#INFO INFO} level including the stack trace of the {@link Throwable}
1861 * <code>t</code> passed as parameter.
1862 *
1863 * @param marker the marker data specific to this log statement
1864 * @param message the message object to log.
1865 * @param t the exception to log, including its stack trace.
1866 */
1867 void info(Marker marker, String message, Throwable t);
1868
1869 /**
1870 * Logs a message which is only to be constructed if the logging level is the {@link Level#INFO INFO} level with the
1871 * specified Marker.
1872 *
1873 * @param marker the marker data specific to this log statement
1874 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
1875 * message factory.
1876 * @since 2.4
1877 */
1878 void info(Marker marker, Supplier<?> msgSupplier);
1879
1880 /**
1881 * Logs a message (only to be constructed if the logging level is the {@link Level#INFO INFO} level) with the
1882 * specified Marker and including the stack trace of the {@link Throwable} <code>t</code> passed as parameter.
1883 *
1884 * @param marker the marker data specific to this log statement
1885 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
1886 * message factory.
1887 * @param t A Throwable or null.
1888 * @since 2.4
1889 */
1890 void info(Marker marker, Supplier<?> msgSupplier, Throwable t);
1891
1892 /**
1893 * Logs a message with the specific Marker at the {@link Level#INFO INFO} level.
1894 *
1895 * @param msg the message string to be logged
1896 */
1897 void info(Message msg);
1898
1899 /**
1900 * Logs a message with the specific Marker at the {@link Level#INFO INFO} level.
1901 *
1902 * @param msg the message string to be logged
1903 * @param t A Throwable or null.
1904 */
1905 void info(Message msg, Throwable t);
1906
1907 /**
1908 * Logs a message which is only to be constructed if the logging level is the {@link Level#INFO INFO} level. The
1909 * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.
1910 *
1911 * @param msgSupplier A function, which when called, produces the desired log message.
1912 * @since 2.4
1913 */
1914 void info(MessageSupplier msgSupplier);
1915
1916 /**
1917 * Logs a message (only to be constructed if the logging level is the {@link Level#INFO INFO} level) including the
1918 * stack trace of the {@link Throwable} <code>t</code> passed as parameter. The {@code MessageSupplier} may or may
1919 * not use the {@link MessageFactory} to construct the {@code Message}.
1920 *
1921 * @param msgSupplier A function, which when called, produces the desired log message.
1922 * @param t the exception to log, including its stack trace.
1923 * @since 2.4
1924 */
1925 void info(MessageSupplier msgSupplier, Throwable t);
1926
1927 /**
1928 * Logs a message CharSequence with the {@link Level#INFO INFO} level.
1929 *
1930 * @param message the message CharSequence to log.
1931 */
1932 void info(CharSequence message);
1933
1934 /**
1935 * Logs a CharSequence at the {@link Level#INFO INFO} level including the stack trace of the {@link Throwable}
1936 * <code>t</code> passed as parameter.
1937 *
1938 * @param message the message CharSequence to log.
1939 * @param t the exception to log, including its stack trace.
1940 */
1941 void info(CharSequence message, Throwable t);
1942
1943 /**
1944 * Logs a message object with the {@link Level#INFO INFO} level.
1945 *
1946 * @param message the message object to log.
1947 */
1948 void info(Object message);
1949
1950 /**
1951 * Logs a message at the {@link Level#INFO INFO} level including the stack trace of the {@link Throwable}
1952 * <code>t</code> passed as parameter.
1953 *
1954 * @param message the message object to log.
1955 * @param t the exception to log, including its stack trace.
1956 */
1957 void info(Object message, Throwable t);
1958
1959 /**
1960 * Logs a message object with the {@link Level#INFO INFO} level.
1961 *
1962 * @param message the message string to log.
1963 */
1964 void info(String message);
1965
1966 /**
1967 * Logs a message with parameters at the {@link Level#INFO INFO} level.
1968 *
1969 * @param message the message to log; the format depends on the message factory.
1970 * @param params parameters to the message.
1971 * @see #getMessageFactory()
1972 */
1973 void info(String message, Object... params);
1974
1975 /**
1976 * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#INFO
1977 * INFO} level.
1978 *
1979 * @param message the message to log; the format depends on the message factory.
1980 * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.
1981 * @since 2.4
1982 */
1983 void info(String message, Supplier<?>... paramSuppliers);
1984
1985 /**
1986 * Logs a message at the {@link Level#INFO INFO} level including the stack trace of the {@link Throwable}
1987 * <code>t</code> passed as parameter.
1988 *
1989 * @param message the message object to log.
1990 * @param t the exception to log, including its stack trace.
1991 */
1992 void info(String message, Throwable t);
1993
1994 /**
1995 * Logs a message which is only to be constructed if the logging level is the {@link Level#INFO INFO} level.
1996 *
1997 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
1998 * message factory.
1999 * @since 2.4
2000 */
2001 void info(Supplier<?> msgSupplier);
2002
2003 /**
2004 * Logs a message (only to be constructed if the logging level is the {@link Level#INFO INFO} level) including the
2005 * stack trace of the {@link Throwable} <code>t</code> passed as parameter.
2006 *
2007 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
2008 * message factory.
2009 * @param t the exception to log, including its stack trace.
2010 * @since 2.4
2011 */
2012 void info(Supplier<?> msgSupplier, Throwable t);
2013
2014 /**
2015 * Logs a message with parameters at info level.
2016 *
2017 * @param marker the marker data specific to this log statement
2018 * @param message the message to log; the format depends on the message factory.
2019 * @param p0 parameter to the message.
2020 */
2021 void info(Marker marker, String message, Object p0);
2022
2023 /**
2024 * Logs a message with parameters at info level.
2025 *
2026 * @param marker the marker data specific to this log statement
2027 * @param message the message to log; the format depends on the message factory.
2028 * @param p0 parameter to the message.
2029 * @param p1 parameter to the message.
2030 */
2031 void info(Marker marker, String message, Object p0, Object p1);
2032
2033 /**
2034 * Logs a message with parameters at info level.
2035 *
2036 * @param marker the marker data specific to this log statement
2037 * @param message the message to log; the format depends on the message factory.
2038 * @param p0 parameter to the message.
2039 * @param p1 parameter to the message.
2040 * @param p2 parameter to the message.
2041 */
2042 void info(Marker marker, String message, Object p0, Object p1, Object p2);
2043
2044 /**
2045 * Logs a message with parameters at info level.
2046 *
2047 * @param marker the marker data specific to this log statement
2048 * @param message the message to log; the format depends on the message factory.
2049 * @param p0 parameter to the message.
2050 * @param p1 parameter to the message.
2051 * @param p2 parameter to the message.
2052 * @param p3 parameter to the message.
2053 */
2054 void info(Marker marker, String message, Object p0, Object p1, Object p2, Object p3);
2055
2056 /**
2057 * Logs a message with parameters at info level.
2058 *
2059 * @param marker the marker data specific to this log statement
2060 * @param message the message to log; the format depends on the message factory.
2061 * @param p0 parameter to the message.
2062 * @param p1 parameter to the message.
2063 * @param p2 parameter to the message.
2064 * @param p3 parameter to the message.
2065 * @param p4 parameter to the message.
2066 */
2067 void info(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4);
2068
2069 /**
2070 * Logs a message with parameters at info level.
2071 *
2072 * @param marker the marker data specific to this log statement
2073 * @param message the message to log; the format depends on the message factory.
2074 * @param p0 parameter to the message.
2075 * @param p1 parameter to the message.
2076 * @param p2 parameter to the message.
2077 * @param p3 parameter to the message.
2078 * @param p4 parameter to the message.
2079 * @param p5 parameter to the message.
2080 */
2081 void info(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);
2082
2083 /**
2084 * Logs a message with parameters at info level.
2085 *
2086 * @param marker the marker data specific to this log statement
2087 * @param message the message to log; the format depends on the message factory.
2088 * @param p0 parameter to the message.
2089 * @param p1 parameter to the message.
2090 * @param p2 parameter to the message.
2091 * @param p3 parameter to the message.
2092 * @param p4 parameter to the message.
2093 * @param p5 parameter to the message.
2094 * @param p6 parameter to the message.
2095 */
2096 void info(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5,
2097 Object p6);
2098
2099 /**
2100 * Logs a message with parameters at info level.
2101 *
2102 * @param marker the marker data specific to this log statement
2103 * @param message the message to log; the format depends on the message factory.
2104 * @param p0 parameter to the message.
2105 * @param p1 parameter to the message.
2106 * @param p2 parameter to the message.
2107 * @param p3 parameter to the message.
2108 * @param p4 parameter to the message.
2109 * @param p5 parameter to the message.
2110 * @param p6 parameter to the message.
2111 * @param p7 parameter to the message.
2112 */
2113 void info(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
2114 Object p7);
2115
2116 /**
2117 * Logs a message with parameters at info level.
2118 *
2119 * @param marker the marker data specific to this log statement
2120 * @param message the message to log; the format depends on the message factory.
2121 * @param p0 parameter to the message.
2122 * @param p1 parameter to the message.
2123 * @param p2 parameter to the message.
2124 * @param p3 parameter to the message.
2125 * @param p4 parameter to the message.
2126 * @param p5 parameter to the message.
2127 * @param p6 parameter to the message.
2128 * @param p7 parameter to the message.
2129 * @param p8 parameter to the message.
2130 */
2131 void info(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
2132 Object p7, Object p8);
2133
2134 /**
2135 * Logs a message with parameters at info level.
2136 *
2137 * @param marker the marker data specific to this log statement
2138 * @param message the message to log; the format depends on the message factory.
2139 * @param p0 parameter to the message.
2140 * @param p1 parameter to the message.
2141 * @param p2 parameter to the message.
2142 * @param p3 parameter to the message.
2143 * @param p4 parameter to the message.
2144 * @param p5 parameter to the message.
2145 * @param p6 parameter to the message.
2146 * @param p7 parameter to the message.
2147 * @param p8 parameter to the message.
2148 * @param p9 parameter to the message.
2149 */
2150 void info(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
2151 Object p7, Object p8, Object p9);
2152
2153 /**
2154 * Logs a message with parameters at info level.
2155 *
2156 * @param message the message to log; the format depends on the message factory.
2157 * @param p0 parameter to the message.
2158 */
2159 void info(String message, Object p0);
2160
2161 /**
2162 * Logs a message with parameters at info level.
2163 *
2164 * @param message the message to log; the format depends on the message factory.
2165 * @param p0 parameter to the message.
2166 * @param p1 parameter to the message.
2167 */
2168 void info(String message, Object p0, Object p1);
2169
2170 /**
2171 * Logs a message with parameters at info level.
2172 *
2173 * @param message the message to log; the format depends on the message factory.
2174 * @param p0 parameter to the message.
2175 * @param p1 parameter to the message.
2176 * @param p2 parameter to the message.
2177 */
2178 void info(String message, Object p0, Object p1, Object p2);
2179
2180 /**
2181 * Logs a message with parameters at info level.
2182 *
2183 * @param message the message to log; the format depends on the message factory.
2184 * @param p0 parameter to the message.
2185 * @param p1 parameter to the message.
2186 * @param p2 parameter to the message.
2187 * @param p3 parameter to the message.
2188 */
2189 void info(String message, Object p0, Object p1, Object p2, Object p3);
2190
2191 /**
2192 * Logs a message with parameters at info level.
2193 *
2194 * @param message the message to log; the format depends on the message factory.
2195 * @param p0 parameter to the message.
2196 * @param p1 parameter to the message.
2197 * @param p2 parameter to the message.
2198 * @param p3 parameter to the message.
2199 * @param p4 parameter to the message.
2200 */
2201 void info(String message, Object p0, Object p1, Object p2, Object p3, Object p4);
2202
2203 /**
2204 * Logs a message with parameters at info level.
2205 *
2206 * @param message the message to log; the format depends on the message factory.
2207 * @param p0 parameter to the message.
2208 * @param p1 parameter to the message.
2209 * @param p2 parameter to the message.
2210 * @param p3 parameter to the message.
2211 * @param p4 parameter to the message.
2212 * @param p5 parameter to the message.
2213 */
2214 void info(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);
2215
2216 /**
2217 * Logs a message with parameters at info level.
2218 *
2219 * @param message the message to log; the format depends on the message factory.
2220 * @param p0 parameter to the message.
2221 * @param p1 parameter to the message.
2222 * @param p2 parameter to the message.
2223 * @param p3 parameter to the message.
2224 * @param p4 parameter to the message.
2225 * @param p5 parameter to the message.
2226 * @param p6 parameter to the message.
2227 */
2228 void info(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6);
2229
2230 /**
2231 * Logs a message with parameters at info level.
2232 *
2233 * @param message the message to log; the format depends on the message factory.
2234 * @param p0 parameter to the message.
2235 * @param p1 parameter to the message.
2236 * @param p2 parameter to the message.
2237 * @param p3 parameter to the message.
2238 * @param p4 parameter to the message.
2239 * @param p5 parameter to the message.
2240 * @param p6 parameter to the message.
2241 * @param p7 parameter to the message.
2242 */
2243 void info(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7);
2244
2245 /**
2246 * Logs a message with parameters at info level.
2247 *
2248 * @param message the message to log; the format depends on the message factory.
2249 * @param p0 parameter to the message.
2250 * @param p1 parameter to the message.
2251 * @param p2 parameter to the message.
2252 * @param p3 parameter to the message.
2253 * @param p4 parameter to the message.
2254 * @param p5 parameter to the message.
2255 * @param p6 parameter to the message.
2256 * @param p7 parameter to the message.
2257 * @param p8 parameter to the message.
2258 */
2259 void info(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,
2260 Object p8);
2261
2262 /**
2263 * Logs a message with parameters at info level.
2264 *
2265 * @param message the message to log; the format depends on the message factory.
2266 * @param p0 parameter to the message.
2267 * @param p1 parameter to the message.
2268 * @param p2 parameter to the message.
2269 * @param p3 parameter to the message.
2270 * @param p4 parameter to the message.
2271 * @param p5 parameter to the message.
2272 * @param p6 parameter to the message.
2273 * @param p7 parameter to the message.
2274 * @param p8 parameter to the message.
2275 * @param p9 parameter to the message.
2276 */
2277 void info(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,
2278 Object p8, Object p9);
2279
2280 /**
2281 * Checks whether this Logger is enabled for the {@link Level#DEBUG DEBUG} Level.
2282 *
2283 * @return boolean - {@code true} if this Logger is enabled for level DEBUG, {@code false} otherwise.
2284 */
2285 boolean isDebugEnabled();
2286
2287 /**
2288 * Checks whether this Logger is enabled for the {@link Level#DEBUG DEBUG} Level.
2289 *
2290 * @param marker The Marker to check
2291 * @return boolean - {@code true} if this Logger is enabled for level DEBUG, {@code false} otherwise.
2292 */
2293 boolean isDebugEnabled(Marker marker);
2294
2295 /**
2296 * Checks whether this Logger is enabled for the given Level.
2297 * <p>
2298 * Note that passing in {@link Level#OFF OFF} always returns {@code true}.
2299 * </p>
2300 *
2301 * @param level the Level to check
2302 * @return boolean - {@code true} if this Logger is enabled for level, {@code false} otherwise.
2303 */
2304 boolean isEnabled(Level level);
2305
2306 /**
2307 * Checks whether this Logger is enabled for the given Level and Marker.
2308 *
2309 * @param level The Level to check
2310 * @param marker The Marker to check
2311 * @return boolean - {@code true} if this Logger is enabled for level and marker, {@code false} otherwise.
2312 */
2313 boolean isEnabled(Level level, Marker marker);
2314
2315 /**
2316 * Checks whether this Logger is enabled for the {@link Level#ERROR ERROR} Level.
2317 *
2318 * @return boolean - {@code true} if this Logger is enabled for level {@link Level#ERROR ERROR}, {@code false}
2319 * otherwise.
2320 */
2321 boolean isErrorEnabled();
2322
2323 /**
2324 * Checks whether this Logger is enabled for the {@link Level#ERROR ERROR} Level.
2325 *
2326 * @param marker The Marker to check
2327 * @return boolean - {@code true} if this Logger is enabled for level {@link Level#ERROR ERROR}, {@code false}
2328 * otherwise.
2329 */
2330 boolean isErrorEnabled(Marker marker);
2331
2332 /**
2333 * Checks whether this Logger is enabled for the {@link Level#FATAL FATAL} Level.
2334 *
2335 * @return boolean - {@code true} if this Logger is enabled for level {@link Level#FATAL FATAL}, {@code false}
2336 * otherwise.
2337 */
2338 boolean isFatalEnabled();
2339
2340 /**
2341 * Checks whether this Logger is enabled for the {@link Level#FATAL FATAL} Level.
2342 *
2343 * @param marker The Marker to check
2344 * @return boolean - {@code true} if this Logger is enabled for level {@link Level#FATAL FATAL}, {@code false}
2345 * otherwise.
2346 */
2347 boolean isFatalEnabled(Marker marker);
2348
2349 /**
2350 * Checks whether this Logger is enabled for the {@link Level#INFO INFO} Level.
2351 *
2352 * @return boolean - {@code true} if this Logger is enabled for level INFO, {@code false} otherwise.
2353 */
2354 boolean isInfoEnabled();
2355
2356 /**
2357 * Checks whether this Logger is enabled for the {@link Level#INFO INFO} Level.
2358 *
2359 * @param marker The Marker to check
2360 * @return boolean - {@code true} if this Logger is enabled for level INFO, {@code false} otherwise.
2361 */
2362 boolean isInfoEnabled(Marker marker);
2363
2364 /**
2365 * Checks whether this Logger is enabled for the {@link Level#TRACE TRACE} level.
2366 *
2367 * @return boolean - {@code true} if this Logger is enabled for level TRACE, {@code false} otherwise.
2368 */
2369 boolean isTraceEnabled();
2370
2371 /**
2372 * Checks whether this Logger is enabled for the {@link Level#TRACE TRACE} level.
2373 *
2374 * @param marker The Marker to check
2375 * @return boolean - {@code true} if this Logger is enabled for level TRACE, {@code false} otherwise.
2376 */
2377 boolean isTraceEnabled(Marker marker);
2378
2379 /**
2380 * Checks whether this Logger is enabled for the {@link Level#WARN WARN} Level.
2381 *
2382 * @return boolean - {@code true} if this Logger is enabled for level {@link Level#WARN WARN}, {@code false}
2383 * otherwise.
2384 */
2385 boolean isWarnEnabled();
2386
2387 /**
2388 * Checks whether this Logger is enabled for the {@link Level#WARN WARN} Level.
2389 *
2390 * @param marker The Marker to check
2391 * @return boolean - {@code true} if this Logger is enabled for level {@link Level#WARN WARN}, {@code false}
2392 * otherwise.
2393 */
2394 boolean isWarnEnabled(Marker marker);
2395
2396 /**
2397 * Logs a message with the specific Marker at the given level.
2398 *
2399 * @param level the logging level
2400 * @param marker the marker data specific to this log statement
2401 * @param msg the message string to be logged
2402 */
2403 void log(Level level, Marker marker, Message msg);
2404
2405 /**
2406 * Logs a message with the specific Marker at the given level.
2407 *
2408 * @param level the logging level
2409 * @param marker the marker data specific to this log statement
2410 * @param msg the message string to be logged
2411 * @param t A Throwable or null.
2412 */
2413 void log(Level level, Marker marker, Message msg, Throwable t);
2414
2415 /**
2416 * Logs a message which is only to be constructed if the logging level is the specified level with the specified
2417 * Marker. The {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the
2418 * {@code Message}.
2419 *
2420 * @param level the logging level
2421 * @param marker the marker data specific to this log statement
2422 * @param msgSupplier A function, which when called, produces the desired log message.
2423 * @since 2.4
2424 */
2425 void log(Level level, Marker marker, MessageSupplier msgSupplier);
2426
2427 /**
2428 * Logs a message (only to be constructed if the logging level is the specified level) with the specified Marker and
2429 * including the stack log of the {@link Throwable} <code>t</code> passed as parameter. The {@code MessageSupplier}
2430 * may or may not use the {@link MessageFactory} to construct the {@code Message}.
2431 *
2432 * @param level the logging level
2433 * @param marker the marker data specific to this log statement
2434 * @param msgSupplier A function, which when called, produces the desired log message.
2435 * @param t A Throwable or null.
2436 * @since 2.4
2437 */
2438 void log(Level level, Marker marker, MessageSupplier msgSupplier, Throwable t);
2439
2440 /**
2441 * Logs a message CharSequence with the given level.
2442 *
2443 * @param level the logging level
2444 * @param marker the marker data specific to this log statement
2445 * @param message the message CharSequence to log.
2446 */
2447 void log(Level level, Marker marker, CharSequence message);
2448
2449 /**
2450 * Logs a CharSequence at the given level including the stack trace of the {@link Throwable} <code>t</code> passed as
2451 * parameter.
2452 *
2453 * @param level the logging level
2454 * @param marker the marker data specific to this log statement
2455 * @param message the message CharSequence to log.
2456 * @param t the exception to log, including its stack trace.
2457 */
2458 void log(Level level, Marker marker, CharSequence message, Throwable t);
2459
2460 /**
2461 * Logs a message object with the given level.
2462 *
2463 * @param level the logging level
2464 * @param marker the marker data specific to this log statement
2465 * @param message the message object to log.
2466 */
2467 void log(Level level, Marker marker, Object message);
2468
2469 /**
2470 * Logs a message at the given level including the stack trace of the {@link Throwable} <code>t</code> passed as
2471 * parameter.
2472 *
2473 * @param level the logging level
2474 * @param marker the marker data specific to this log statement
2475 * @param message the message to log.
2476 * @param t the exception to log, including its stack trace.
2477 */
2478 void log(Level level, Marker marker, Object message, Throwable t);
2479
2480 /**
2481 * Logs a message object with the given level.
2482 *
2483 * @param level the logging level
2484 * @param marker the marker data specific to this log statement
2485 * @param message the message object to log.
2486 */
2487 void log(Level level, Marker marker, String message);
2488
2489 /**
2490 * Logs a message with parameters at the given level.
2491 *
2492 * @param level the logging level
2493 * @param marker the marker data specific to this log statement
2494 * @param message the message to log; the format depends on the message factory.
2495 * @param params parameters to the message.
2496 * @see #getMessageFactory()
2497 */
2498 void log(Level level, Marker marker, String message, Object... params);
2499
2500 /**
2501 * Logs a message with parameters which are only to be constructed if the logging level is the specified level.
2502 *
2503 * @param level the logging level
2504 * @param marker the marker data specific to this log statement
2505 * @param message the message to log; the format depends on the message factory.
2506 * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.
2507 * @since 2.4
2508 */
2509 void log(Level level, Marker marker, String message, Supplier<?>... paramSuppliers);
2510
2511 /**
2512 * Logs a message at the given level including the stack trace of the {@link Throwable} <code>t</code> passed as
2513 * parameter.
2514 *
2515 * @param level the logging level
2516 * @param marker the marker data specific to this log statement
2517 * @param message the message to log.
2518 * @param t the exception to log, including its stack trace.
2519 */
2520 void log(Level level, Marker marker, String message, Throwable t);
2521
2522 /**
2523 * Logs a message (only to be constructed if the logging level is the specified level) with the specified Marker.
2524 *
2525 * @param level the logging level
2526 * @param marker the marker data specific to this log statement
2527 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
2528 * message factory.
2529 * @since 2.4
2530 */
2531 void log(Level level, Marker marker, Supplier<?> msgSupplier);
2532
2533 /**
2534 * Logs a message (only to be constructed if the logging level is the specified level) with the specified Marker and
2535 * including the stack log of the {@link Throwable} <code>t</code> passed as parameter.
2536 *
2537 * @param level the logging level
2538 * @param marker the marker data specific to this log statement
2539 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
2540 * message factory.
2541 * @param t A Throwable or null.
2542 * @since 2.4
2543 */
2544 void log(Level level, Marker marker, Supplier<?> msgSupplier, Throwable t);
2545
2546 /**
2547 * Logs a message with the specific Marker at the given level.
2548 *
2549 * @param level the logging level
2550 * @param msg the message string to be logged
2551 */
2552 void log(Level level, Message msg);
2553
2554 /**
2555 * Logs a message with the specific Marker at the given level.
2556 *
2557 * @param level the logging level
2558 * @param msg the message string to be logged
2559 * @param t A Throwable or null.
2560 */
2561 void log(Level level, Message msg, Throwable t);
2562
2563 /**
2564 * Logs a message which is only to be constructed if the logging level is the specified level. The
2565 * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.
2566 *
2567 * @param level the logging level
2568 * @param msgSupplier A function, which when called, produces the desired log message.
2569 * @since 2.4
2570 */
2571 void log(Level level, MessageSupplier msgSupplier);
2572
2573 /**
2574 * Logs a message (only to be constructed if the logging level is the specified level) including the stack log of
2575 * the {@link Throwable} <code>t</code> passed as parameter. The {@code MessageSupplier} may or may not use the
2576 * {@link MessageFactory} to construct the {@code Message}.
2577 *
2578 * @param level the logging level
2579 * @param msgSupplier A function, which when called, produces the desired log message.
2580 * @param t the exception to log, including its stack log.
2581 * @since 2.4
2582 */
2583 void log(Level level, MessageSupplier msgSupplier, Throwable t);
2584
2585 /**
2586 * Logs a message CharSequence with the given level.
2587 *
2588 * @param level the logging level
2589 * @param message the message CharSequence to log.
2590 */
2591 void log(Level level, CharSequence message);
2592
2593 /**
2594 * Logs a CharSequence at the given level including the stack trace of the {@link Throwable} <code>t</code> passed as
2595 * parameter.
2596 *
2597 * @param level the logging level
2598 * @param message the message CharSequence to log.
2599 * @param t the exception to log, including its stack trace.
2600 */
2601 void log(Level level, CharSequence message, Throwable t);
2602
2603 /**
2604 * Logs a message object with the given level.
2605 *
2606 * @param level the logging level
2607 * @param message the message object to log.
2608 */
2609 void log(Level level, Object message);
2610
2611 /**
2612 * Logs a message at the given level including the stack trace of the {@link Throwable} <code>t</code> passed as
2613 * parameter.
2614 *
2615 * @param level the logging level
2616 * @param message the message to log.
2617 * @param t the exception to log, including its stack trace.
2618 */
2619 void log(Level level, Object message, Throwable t);
2620
2621 /**
2622 * Logs a message object with the given level.
2623 *
2624 * @param level the logging level
2625 * @param message the message string to log.
2626 */
2627 void log(Level level, String message);
2628
2629 /**
2630 * Logs a message with parameters at the given level.
2631 *
2632 * @param level the logging level
2633 * @param message the message to log; the format depends on the message factory.
2634 * @param params parameters to the message.
2635 * @see #getMessageFactory()
2636 */
2637 void log(Level level, String message, Object... params);
2638
2639 /**
2640 * Logs a message with parameters which are only to be constructed if the logging level is the specified level.
2641 *
2642 * @param level the logging level
2643 * @param message the message to log; the format depends on the message factory.
2644 * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.
2645 * @since 2.4
2646 */
2647 void log(Level level, String message, Supplier<?>... paramSuppliers);
2648
2649 /**
2650 * Logs a message at the given level including the stack trace of the {@link Throwable} <code>t</code> passed as
2651 * parameter.
2652 *
2653 * @param level the logging level
2654 * @param message the message to log.
2655 * @param t the exception to log, including its stack trace.
2656 */
2657 void log(Level level, String message, Throwable t);
2658
2659 /**
2660 * Logs a message which is only to be constructed if the logging level is the specified level.
2661 *
2662 * @param level the logging level
2663 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
2664 * message factory.
2665 * @since 2.4
2666 */
2667 void log(Level level, Supplier<?> msgSupplier);
2668
2669 /**
2670 * Logs a message (only to be constructed if the logging level is the specified level) including the stack log of
2671 * the {@link Throwable} <code>t</code> passed as parameter.
2672 *
2673 * @param level the logging level
2674 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
2675 * message factory.
2676 * @param t the exception to log, including its stack log.
2677 * @since 2.4
2678 */
2679 void log(Level level, Supplier<?> msgSupplier, Throwable t);
2680
2681 /**
2682 * Logs a message with parameters at the specified level.
2683 *
2684 * @param level the logging level
2685 * @param marker the marker data specific to this log statement
2686 * @param message the message to log; the format depends on the message factory.
2687 * @param p0 parameter to the message.
2688 */
2689 void log(Level level, Marker marker, String message, Object p0);
2690
2691 /**
2692 * Logs a message with parameters at the specified level.
2693 *
2694 * @param level the logging level
2695 * @param marker the marker data specific to this log statement
2696 * @param message the message to log; the format depends on the message factory.
2697 * @param p0 parameter to the message.
2698 * @param p1 parameter to the message.
2699 */
2700 void log(Level level, Marker marker, String message, Object p0, Object p1);
2701
2702 /**
2703 * Logs a message with parameters at the specified level.
2704 *
2705 * @param level the logging level
2706 * @param marker the marker data specific to this log statement
2707 * @param message the message to log; the format depends on the message factory.
2708 * @param p0 parameter to the message.
2709 * @param p1 parameter to the message.
2710 * @param p2 parameter to the message.
2711 */
2712 void log(Level level, Marker marker, String message, Object p0, Object p1, Object p2);
2713
2714 /**
2715 * Logs a message with parameters at the specified level.
2716 *
2717 * @param level the logging level
2718 * @param marker the marker data specific to this log statement
2719 * @param message the message to log; the format depends on the message factory.
2720 * @param p0 parameter to the message.
2721 * @param p1 parameter to the message.
2722 * @param p2 parameter to the message.
2723 * @param p3 parameter to the message.
2724 */
2725 void log(Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3);
2726
2727 /**
2728 * Logs a message with parameters at the specified level.
2729 *
2730 * @param level the logging level
2731 * @param marker the marker data specific to this log statement
2732 * @param message the message to log; the format depends on the message factory.
2733 * @param p0 parameter to the message.
2734 * @param p1 parameter to the message.
2735 * @param p2 parameter to the message.
2736 * @param p3 parameter to the message.
2737 * @param p4 parameter to the message.
2738 */
2739 void log(Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4);
2740
2741 /**
2742 * Logs a message with parameters at the specified level.
2743 *
2744 * @param level the logging level
2745 * @param marker the marker data specific to this log statement
2746 * @param message the message to log; the format depends on the message factory.
2747 * @param p0 parameter to the message.
2748 * @param p1 parameter to the message.
2749 * @param p2 parameter to the message.
2750 * @param p3 parameter to the message.
2751 * @param p4 parameter to the message.
2752 * @param p5 parameter to the message.
2753 */
2754 void log(Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);
2755
2756 /**
2757 * Logs a message with parameters at the specified level.
2758 *
2759 * @param level the logging level
2760 * @param marker the marker data specific to this log statement
2761 * @param message the message to log; the format depends on the message factory.
2762 * @param p0 parameter to the message.
2763 * @param p1 parameter to the message.
2764 * @param p2 parameter to the message.
2765 * @param p3 parameter to the message.
2766 * @param p4 parameter to the message.
2767 * @param p5 parameter to the message.
2768 * @param p6 parameter to the message.
2769 */
2770 void log(Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5,
2771 Object p6);
2772
2773 /**
2774 * Logs a message with parameters at the specified level.
2775 *
2776 * @param level the logging level
2777 * @param marker the marker data specific to this log statement
2778 * @param message the message to log; the format depends on the message factory.
2779 * @param p0 parameter to the message.
2780 * @param p1 parameter to the message.
2781 * @param p2 parameter to the message.
2782 * @param p3 parameter to the message.
2783 * @param p4 parameter to the message.
2784 * @param p5 parameter to the message.
2785 * @param p6 parameter to the message.
2786 * @param p7 parameter to the message.
2787 */
2788 void log(Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
2789 Object p7);
2790
2791 /**
2792 * Logs a message with parameters at the specified level.
2793 *
2794 * @param level the logging level
2795 * @param marker the marker data specific to this log statement
2796 * @param message the message to log; the format depends on the message factory.
2797 * @param p0 parameter to the message.
2798 * @param p1 parameter to the message.
2799 * @param p2 parameter to the message.
2800 * @param p3 parameter to the message.
2801 * @param p4 parameter to the message.
2802 * @param p5 parameter to the message.
2803 * @param p6 parameter to the message.
2804 * @param p7 parameter to the message.
2805 * @param p8 parameter to the message.
2806 */
2807 void log(Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
2808 Object p7, Object p8);
2809
2810 /**
2811 * Logs a message with parameters at the specified level.
2812 *
2813 * @param level the logging level
2814 * @param marker the marker data specific to this log statement
2815 * @param message the message to log; the format depends on the message factory.
2816 * @param p0 parameter to the message.
2817 * @param p1 parameter to the message.
2818 * @param p2 parameter to the message.
2819 * @param p3 parameter to the message.
2820 * @param p4 parameter to the message.
2821 * @param p5 parameter to the message.
2822 * @param p6 parameter to the message.
2823 * @param p7 parameter to the message.
2824 * @param p8 parameter to the message.
2825 * @param p9 parameter to the message.
2826 */
2827 void log(Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
2828 Object p7, Object p8, Object p9);
2829
2830 /**
2831 * Logs a message with parameters at the specified level.
2832 *
2833 * @param level the logging level
2834 * @param message the message to log; the format depends on the message factory.
2835 * @param p0 parameter to the message.
2836 */
2837 void log(Level level, String message, Object p0);
2838
2839 /**
2840 * Logs a message with parameters at the specified level.
2841 *
2842 * @param level the logging level
2843 * @param message the message to log; the format depends on the message factory.
2844 * @param p0 parameter to the message.
2845 * @param p1 parameter to the message.
2846 */
2847 void log(Level level, String message, Object p0, Object p1);
2848
2849 /**
2850 * Logs a message with parameters at the specified level.
2851 *
2852 * @param level the logging level
2853 * @param message the message to log; the format depends on the message factory.
2854 * @param p0 parameter to the message.
2855 * @param p1 parameter to the message.
2856 * @param p2 parameter to the message.
2857 */
2858 void log(Level level, String message, Object p0, Object p1, Object p2);
2859
2860 /**
2861 * Logs a message with parameters at the specified level.
2862 *
2863 * @param level the logging level
2864 * @param message the message to log; the format depends on the message factory.
2865 * @param p0 parameter to the message.
2866 * @param p1 parameter to the message.
2867 * @param p2 parameter to the message.
2868 * @param p3 parameter to the message.
2869 */
2870 void log(Level level, String message, Object p0, Object p1, Object p2, Object p3);
2871
2872 /**
2873 * Logs a message with parameters at the specified level.
2874 *
2875 * @param level the logging level
2876 * @param message the message to log; the format depends on the message factory.
2877 * @param p0 parameter to the message.
2878 * @param p1 parameter to the message.
2879 * @param p2 parameter to the message.
2880 * @param p3 parameter to the message.
2881 * @param p4 parameter to the message.
2882 */
2883 void log(Level level, String message, Object p0, Object p1, Object p2, Object p3, Object p4);
2884
2885 /**
2886 * Logs a message with parameters at the specified level.
2887 *
2888 * @param level the logging level
2889 * @param message the message to log; the format depends on the message factory.
2890 * @param p0 parameter to the message.
2891 * @param p1 parameter to the message.
2892 * @param p2 parameter to the message.
2893 * @param p3 parameter to the message.
2894 * @param p4 parameter to the message.
2895 * @param p5 parameter to the message.
2896 */
2897 void log(Level level, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);
2898
2899 /**
2900 * Logs a message with parameters at the specified level.
2901 *
2902 * @param level the logging level
2903 * @param message the message to log; the format depends on the message factory.
2904 * @param p0 parameter to the message.
2905 * @param p1 parameter to the message.
2906 * @param p2 parameter to the message.
2907 * @param p3 parameter to the message.
2908 * @param p4 parameter to the message.
2909 * @param p5 parameter to the message.
2910 * @param p6 parameter to the message.
2911 */
2912 void log(Level level, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6);
2913
2914 /**
2915 * Logs a message with parameters at the specified level.
2916 *
2917 * @param level the logging level
2918 * @param message the message to log; the format depends on the message factory.
2919 * @param p0 parameter to the message.
2920 * @param p1 parameter to the message.
2921 * @param p2 parameter to the message.
2922 * @param p3 parameter to the message.
2923 * @param p4 parameter to the message.
2924 * @param p5 parameter to the message.
2925 * @param p6 parameter to the message.
2926 * @param p7 parameter to the message.
2927 */
2928 void log(Level level, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7);
2929
2930 /**
2931 * Logs a message with parameters at the specified level.
2932 *
2933 * @param level the logging level
2934 * @param message the message to log; the format depends on the message factory.
2935 * @param p0 parameter to the message.
2936 * @param p1 parameter to the message.
2937 * @param p2 parameter to the message.
2938 * @param p3 parameter to the message.
2939 * @param p4 parameter to the message.
2940 * @param p5 parameter to the message.
2941 * @param p6 parameter to the message.
2942 * @param p7 parameter to the message.
2943 * @param p8 parameter to the message.
2944 */
2945 void log(Level level, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,
2946 Object p8);
2947
2948 /**
2949 * Logs a message with parameters at the specified level.
2950 *
2951 * @param level the logging level
2952 * @param message the message to log; the format depends on the message factory.
2953 * @param p0 parameter to the message.
2954 * @param p1 parameter to the message.
2955 * @param p2 parameter to the message.
2956 * @param p3 parameter to the message.
2957 * @param p4 parameter to the message.
2958 * @param p5 parameter to the message.
2959 * @param p6 parameter to the message.
2960 * @param p7 parameter to the message.
2961 * @param p8 parameter to the message.
2962 * @param p9 parameter to the message.
2963 */
2964 void log(Level level, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,
2965 Object p8, Object p9);
2966
2967 /**
2968 * Logs a formatted message using the specified format string and arguments.
2969 *
2970 * @param level The logging Level.
2971 * @param marker the marker data specific to this log statement.
2972 * @param format The format String.
2973 * @param params Arguments specified by the format.
2974 */
2975 void printf(Level level, Marker marker, String format, Object... params);
2976
2977 /**
2978 * Logs a formatted message using the specified format string and arguments.
2979 *
2980 * @param level The logging Level.
2981 * @param format The format String.
2982 * @param params Arguments specified by the format.
2983 */
2984 void printf(Level level, String format, Object... params);
2985
2986 /**
2987 * Logs an exception or error to be thrown. This may be coded as:
2988 *
2989 * <pre>
2990 * throw logger.throwing(Level.DEBUG, myException);
2991 * </pre>
2992 *
2993 * @param <T> the Throwable type.
2994 * @param level The logging Level.
2995 * @param t The Throwable.
2996 * @return the Throwable.
2997 */
2998 <T extends Throwable> T throwing(Level level, T t);
2999
3000 /**
3001 * Logs an exception or error to be thrown. This may be coded as:
3002 *
3003 * <pre>
3004 * throw logger.throwing(myException);
3005 * </pre>
3006 *
3007 * @param <T> the Throwable type.
3008 * @param t The Throwable.
3009 * @return the Throwable.
3010 */
3011 <T extends Throwable> T throwing(T t);
3012
3013 /**
3014 * Logs a message with the specific Marker at the {@link Level#TRACE TRACE} level.
3015 *
3016 * @param marker the marker data specific to this log statement
3017 * @param msg the message string to be logged
3018 */
3019 void trace(Marker marker, Message msg);
3020
3021 /**
3022 * Logs a message with the specific Marker at the {@link Level#TRACE TRACE} level.
3023 *
3024 * @param marker the marker data specific to this log statement
3025 * @param msg the message string to be logged
3026 * @param t A Throwable or null.
3027 */
3028 void trace(Marker marker, Message msg, Throwable t);
3029
3030 /**
3031 * Logs a message which is only to be constructed if the logging level is the {@link Level#TRACE TRACE} level with
3032 * the specified Marker. The {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the
3033 * {@code Message}.
3034 *
3035 * @param marker the marker data specific to this log statement
3036 * @param msgSupplier A function, which when called, produces the desired log message.
3037 * @since 2.4
3038 */
3039 void trace(Marker marker, MessageSupplier msgSupplier);
3040
3041 /**
3042 * Logs a message (only to be constructed if the logging level is the {@link Level#TRACE TRACE} level) with the
3043 * specified Marker and including the stack trace of the {@link Throwable} <code>t</code> passed as parameter. The
3044 * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.
3045 *
3046 * @param marker the marker data specific to this log statement
3047 * @param msgSupplier A function, which when called, produces the desired log message.
3048 * @param t A Throwable or null.
3049 * @since 2.4
3050 */
3051 void trace(Marker marker, MessageSupplier msgSupplier, Throwable t);
3052
3053 /**
3054 * Logs a message CharSequence with the {@link Level#TRACE TRACE} level.
3055 *
3056 * @param marker the marker data specific to this log statement
3057 * @param message the message CharSequence to log.
3058 */
3059 void trace(Marker marker, CharSequence message);
3060
3061 /**
3062 * Logs a CharSequence at the {@link Level#TRACE TRACE} level including the stack trace of the {@link Throwable}
3063 * <code>t</code> passed as parameter.
3064 *
3065 * @param marker the marker data specific to this log statement
3066 * @param message the message CharSequence to log.
3067 * @param t the exception to log, including its stack trace.
3068 * @see #debug(String)
3069 */
3070 void trace(Marker marker, CharSequence message, Throwable t);
3071
3072 /**
3073 * Logs a message object with the {@link Level#TRACE TRACE} level.
3074 *
3075 * @param marker the marker data specific to this log statement
3076 * @param message the message object to log.
3077 */
3078 void trace(Marker marker, Object message);
3079
3080 /**
3081 * Logs a message at the {@link Level#TRACE TRACE} level including the stack trace of the {@link Throwable}
3082 * <code>t</code> passed as parameter.
3083 *
3084 * @param marker the marker data specific to this log statement
3085 * @param message the message object to log.
3086 * @param t the exception to log, including its stack trace.
3087 * @see #debug(String)
3088 */
3089 void trace(Marker marker, Object message, Throwable t);
3090
3091 /**
3092 * Logs a message object with the {@link Level#TRACE TRACE} level.
3093 *
3094 * @param marker the marker data specific to this log statement
3095 * @param message the message string to log.
3096 */
3097 void trace(Marker marker, String message);
3098
3099 /**
3100 * Logs a message with parameters at the {@link Level#TRACE TRACE} level.
3101 *
3102 * @param marker the marker data specific to this log statement
3103 * @param message the message to log; the format depends on the message factory.
3104 * @param params parameters to the message.
3105 * @see #getMessageFactory()
3106 */
3107 void trace(Marker marker, String message, Object... params);
3108
3109 /**
3110 * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#TRACE
3111 * TRACE} level.
3112 *
3113 * @param marker the marker data specific to this log statement
3114 * @param message the message to log; the format depends on the message factory.
3115 * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.
3116 * @since 2.4
3117 */
3118 void trace(Marker marker, String message, Supplier<?>... paramSuppliers);
3119
3120 /**
3121 * Logs a message at the {@link Level#TRACE TRACE} level including the stack trace of the {@link Throwable}
3122 * <code>t</code> passed as parameter.
3123 *
3124 * @param marker the marker data specific to this log statement
3125 * @param message the message object to log.
3126 * @param t the exception to log, including its stack trace.
3127 * @see #debug(String)
3128 */
3129 void trace(Marker marker, String message, Throwable t);
3130
3131 /**
3132 * Logs a message which is only to be constructed if the logging level is the {@link Level#TRACE TRACE} level with
3133 * the specified Marker.
3134 *
3135 * @param marker the marker data specific to this log statement
3136 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
3137 * message factory.
3138 * @since 2.4
3139 */
3140 void trace(Marker marker, Supplier<?> msgSupplier);
3141
3142 /**
3143 * Logs a message (only to be constructed if the logging level is the {@link Level#TRACE TRACE} level) with the
3144 * specified Marker and including the stack trace of the {@link Throwable} <code>t</code> passed as parameter.
3145 *
3146 * @param marker the marker data specific to this log statement
3147 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
3148 * message factory.
3149 * @param t A Throwable or null.
3150 * @since 2.4
3151 */
3152 void trace(Marker marker, Supplier<?> msgSupplier, Throwable t);
3153
3154 /**
3155 * Logs a message with the specific Marker at the {@link Level#TRACE TRACE} level.
3156 *
3157 * @param msg the message string to be logged
3158 */
3159 void trace(Message msg);
3160
3161 /**
3162 * Logs a message with the specific Marker at the {@link Level#TRACE TRACE} level.
3163 *
3164 * @param msg the message string to be logged
3165 * @param t A Throwable or null.
3166 */
3167 void trace(Message msg, Throwable t);
3168
3169 /**
3170 * Logs a message which is only to be constructed if the logging level is the {@link Level#TRACE TRACE} level. The
3171 * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.
3172 *
3173 * @param msgSupplier A function, which when called, produces the desired log message.
3174 * @since 2.4
3175 */
3176 void trace(MessageSupplier msgSupplier);
3177
3178 /**
3179 * Logs a message (only to be constructed if the logging level is the {@link Level#TRACE TRACE} level) including the
3180 * stack trace of the {@link Throwable} <code>t</code> passed as parameter. The {@code MessageSupplier} may or may
3181 * not use the {@link MessageFactory} to construct the {@code Message}.
3182 *
3183 * @param msgSupplier A function, which when called, produces the desired log message.
3184 * @param t the exception to log, including its stack trace.
3185 * @since 2.4
3186 */
3187 void trace(MessageSupplier msgSupplier, Throwable t);
3188
3189 /**
3190 * Logs a message CharSequence with the {@link Level#TRACE TRACE} level.
3191 *
3192 * @param message the message CharSequence to log.
3193 */
3194 void trace(CharSequence message);
3195
3196 /**
3197 * Logs a CharSequence at the {@link Level#TRACE TRACE} level including the stack trace of the {@link Throwable}
3198 * <code>t</code> passed as parameter.
3199 *
3200 * @param message the message CharSequence to log.
3201 * @param t the exception to log, including its stack trace.
3202 * @see #debug(String)
3203 */
3204 void trace(CharSequence message, Throwable t);
3205
3206 /**
3207 * Logs a message object with the {@link Level#TRACE TRACE} level.
3208 *
3209 * @param message the message object to log.
3210 */
3211 void trace(Object message);
3212
3213 /**
3214 * Logs a message at the {@link Level#TRACE TRACE} level including the stack trace of the {@link Throwable}
3215 * <code>t</code> passed as parameter.
3216 *
3217 * @param message the message object to log.
3218 * @param t the exception to log, including its stack trace.
3219 * @see #debug(String)
3220 */
3221 void trace(Object message, Throwable t);
3222
3223 /**
3224 * Logs a message object with the {@link Level#TRACE TRACE} level.
3225 *
3226 * @param message the message string to log.
3227 */
3228 void trace(String message);
3229
3230 /**
3231 * Logs a message with parameters at the {@link Level#TRACE TRACE} level.
3232 *
3233 * @param message the message to log; the format depends on the message factory.
3234 * @param params parameters to the message.
3235 * @see #getMessageFactory()
3236 */
3237 void trace(String message, Object... params);
3238
3239 /**
3240 * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#TRACE
3241 * TRACE} level.
3242 *
3243 * @param message the message to log; the format depends on the message factory.
3244 * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.
3245 * @since 2.4
3246 */
3247 void trace(String message, Supplier<?>... paramSuppliers);
3248
3249 /**
3250 * Logs a message at the {@link Level#TRACE TRACE} level including the stack trace of the {@link Throwable}
3251 * <code>t</code> passed as parameter.
3252 *
3253 * @param message the message object to log.
3254 * @param t the exception to log, including its stack trace.
3255 * @see #debug(String)
3256 */
3257 void trace(String message, Throwable t);
3258
3259 /**
3260 * Logs a message which is only to be constructed if the logging level is the {@link Level#TRACE TRACE} level.
3261 *
3262 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
3263 * message factory.
3264 * @since 2.4
3265 */
3266 void trace(Supplier<?> msgSupplier);
3267
3268 /**
3269 * Logs a message (only to be constructed if the logging level is the {@link Level#TRACE TRACE} level) including the
3270 * stack trace of the {@link Throwable} <code>t</code> passed as parameter.
3271 *
3272 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
3273 * message factory.
3274 * @param t the exception to log, including its stack trace.
3275 * @since 2.4
3276 */
3277 void trace(Supplier<?> msgSupplier, Throwable t);
3278
3279 /**
3280 * Logs a message with parameters at trace level.
3281 *
3282 * @param marker the marker data specific to this log statement
3283 * @param message the message to log; the format depends on the message factory.
3284 * @param p0 parameter to the message.
3285 */
3286 void trace(Marker marker, String message, Object p0);
3287
3288 /**
3289 * Logs a message with parameters at trace level.
3290 *
3291 * @param marker the marker data specific to this log statement
3292 * @param message the message to log; the format depends on the message factory.
3293 * @param p0 parameter to the message.
3294 * @param p1 parameter to the message.
3295 */
3296 void trace(Marker marker, String message, Object p0, Object p1);
3297
3298 /**
3299 * Logs a message with parameters at trace level.
3300 *
3301 * @param marker the marker data specific to this log statement
3302 * @param message the message to log; the format depends on the message factory.
3303 * @param p0 parameter to the message.
3304 * @param p1 parameter to the message.
3305 * @param p2 parameter to the message.
3306 */
3307 void trace(Marker marker, String message, Object p0, Object p1, Object p2);
3308
3309 /**
3310 * Logs a message with parameters at trace level.
3311 *
3312 * @param marker the marker data specific to this log statement
3313 * @param message the message to log; the format depends on the message factory.
3314 * @param p0 parameter to the message.
3315 * @param p1 parameter to the message.
3316 * @param p2 parameter to the message.
3317 * @param p3 parameter to the message.
3318 */
3319 void trace(Marker marker, String message, Object p0, Object p1, Object p2, Object p3);
3320
3321 /**
3322 * Logs a message with parameters at trace level.
3323 *
3324 * @param marker the marker data specific to this log statement
3325 * @param message the message to log; the format depends on the message factory.
3326 * @param p0 parameter to the message.
3327 * @param p1 parameter to the message.
3328 * @param p2 parameter to the message.
3329 * @param p3 parameter to the message.
3330 * @param p4 parameter to the message.
3331 */
3332 void trace(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4);
3333
3334 /**
3335 * Logs a message with parameters at trace level.
3336 *
3337 * @param marker the marker data specific to this log statement
3338 * @param message the message to log; the format depends on the message factory.
3339 * @param p0 parameter to the message.
3340 * @param p1 parameter to the message.
3341 * @param p2 parameter to the message.
3342 * @param p3 parameter to the message.
3343 * @param p4 parameter to the message.
3344 * @param p5 parameter to the message.
3345 */
3346 void trace(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);
3347
3348 /**
3349 * Logs a message with parameters at trace level.
3350 *
3351 * @param marker the marker data specific to this log statement
3352 * @param message the message to log; the format depends on the message factory.
3353 * @param p0 parameter to the message.
3354 * @param p1 parameter to the message.
3355 * @param p2 parameter to the message.
3356 * @param p3 parameter to the message.
3357 * @param p4 parameter to the message.
3358 * @param p5 parameter to the message.
3359 * @param p6 parameter to the message.
3360 */
3361 void trace(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5,
3362 Object p6);
3363
3364 /**
3365 * Logs a message with parameters at trace level.
3366 *
3367 * @param marker the marker data specific to this log statement
3368 * @param message the message to log; the format depends on the message factory.
3369 * @param p0 parameter to the message.
3370 * @param p1 parameter to the message.
3371 * @param p2 parameter to the message.
3372 * @param p3 parameter to the message.
3373 * @param p4 parameter to the message.
3374 * @param p5 parameter to the message.
3375 * @param p6 parameter to the message.
3376 * @param p7 parameter to the message.
3377 */
3378 void trace(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
3379 Object p7);
3380
3381 /**
3382 * Logs a message with parameters at trace level.
3383 *
3384 * @param marker the marker data specific to this log statement
3385 * @param message the message to log; the format depends on the message factory.
3386 * @param p0 parameter to the message.
3387 * @param p1 parameter to the message.
3388 * @param p2 parameter to the message.
3389 * @param p3 parameter to the message.
3390 * @param p4 parameter to the message.
3391 * @param p5 parameter to the message.
3392 * @param p6 parameter to the message.
3393 * @param p7 parameter to the message.
3394 * @param p8 parameter to the message.
3395 */
3396 void trace(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
3397 Object p7, Object p8);
3398
3399 /**
3400 * Logs a message with parameters at trace level.
3401 *
3402 * @param marker the marker data specific to this log statement
3403 * @param message the message to log; the format depends on the message factory.
3404 * @param p0 parameter to the message.
3405 * @param p1 parameter to the message.
3406 * @param p2 parameter to the message.
3407 * @param p3 parameter to the message.
3408 * @param p4 parameter to the message.
3409 * @param p5 parameter to the message.
3410 * @param p6 parameter to the message.
3411 * @param p7 parameter to the message.
3412 * @param p8 parameter to the message.
3413 * @param p9 parameter to the message.
3414 */
3415 void trace(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
3416 Object p7, Object p8, Object p9);
3417
3418 /**
3419 * Logs a message with parameters at trace level.
3420 *
3421 * @param message the message to log; the format depends on the message factory.
3422 * @param p0 parameter to the message.
3423 */
3424 void trace(String message, Object p0);
3425
3426 /**
3427 * Logs a message with parameters at trace level.
3428 *
3429 * @param message the message to log; the format depends on the message factory.
3430 * @param p0 parameter to the message.
3431 * @param p1 parameter to the message.
3432 */
3433 void trace(String message, Object p0, Object p1);
3434
3435 /**
3436 * Logs a message with parameters at trace level.
3437 *
3438 * @param message the message to log; the format depends on the message factory.
3439 * @param p0 parameter to the message.
3440 * @param p1 parameter to the message.
3441 * @param p2 parameter to the message.
3442 */
3443 void trace(String message, Object p0, Object p1, Object p2);
3444
3445 /**
3446 * Logs a message with parameters at trace level.
3447 *
3448 * @param message the message to log; the format depends on the message factory.
3449 * @param p0 parameter to the message.
3450 * @param p1 parameter to the message.
3451 * @param p2 parameter to the message.
3452 * @param p3 parameter to the message.
3453 */
3454 void trace(String message, Object p0, Object p1, Object p2, Object p3);
3455
3456 /**
3457 * Logs a message with parameters at trace level.
3458 *
3459 * @param message the message to log; the format depends on the message factory.
3460 * @param p0 parameter to the message.
3461 * @param p1 parameter to the message.
3462 * @param p2 parameter to the message.
3463 * @param p3 parameter to the message.
3464 * @param p4 parameter to the message.
3465 */
3466 void trace(String message, Object p0, Object p1, Object p2, Object p3, Object p4);
3467
3468 /**
3469 * Logs a message with parameters at trace level.
3470 *
3471 * @param message the message to log; the format depends on the message factory.
3472 * @param p0 parameter to the message.
3473 * @param p1 parameter to the message.
3474 * @param p2 parameter to the message.
3475 * @param p3 parameter to the message.
3476 * @param p4 parameter to the message.
3477 * @param p5 parameter to the message.
3478 */
3479 void trace(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);
3480
3481 /**
3482 * Logs a message with parameters at trace level.
3483 *
3484 * @param message the message to log; the format depends on the message factory.
3485 * @param p0 parameter to the message.
3486 * @param p1 parameter to the message.
3487 * @param p2 parameter to the message.
3488 * @param p3 parameter to the message.
3489 * @param p4 parameter to the message.
3490 * @param p5 parameter to the message.
3491 * @param p6 parameter to the message.
3492 */
3493 void trace(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6);
3494
3495 /**
3496 * Logs a message with parameters at trace level.
3497 *
3498 * @param message the message to log; the format depends on the message factory.
3499 * @param p0 parameter to the message.
3500 * @param p1 parameter to the message.
3501 * @param p2 parameter to the message.
3502 * @param p3 parameter to the message.
3503 * @param p4 parameter to the message.
3504 * @param p5 parameter to the message.
3505 * @param p6 parameter to the message.
3506 * @param p7 parameter to the message.
3507 */
3508 void trace(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7);
3509
3510 /**
3511 * Logs a message with parameters at trace level.
3512 *
3513 * @param message the message to log; the format depends on the message factory.
3514 * @param p0 parameter to the message.
3515 * @param p1 parameter to the message.
3516 * @param p2 parameter to the message.
3517 * @param p3 parameter to the message.
3518 * @param p4 parameter to the message.
3519 * @param p5 parameter to the message.
3520 * @param p6 parameter to the message.
3521 * @param p7 parameter to the message.
3522 * @param p8 parameter to the message.
3523 */
3524 void trace(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,
3525 Object p8);
3526
3527 /**
3528 * Logs a message with parameters at trace level.
3529 *
3530 * @param message the message to log; the format depends on the message factory.
3531 * @param p0 parameter to the message.
3532 * @param p1 parameter to the message.
3533 * @param p2 parameter to the message.
3534 * @param p3 parameter to the message.
3535 * @param p4 parameter to the message.
3536 * @param p5 parameter to the message.
3537 * @param p6 parameter to the message.
3538 * @param p7 parameter to the message.
3539 * @param p8 parameter to the message.
3540 * @param p9 parameter to the message.
3541 */
3542 void trace(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,
3543 Object p8, Object p9);
3544
3545 /**
3546 * Logs entry to a method. Used when the method in question has no parameters or when the parameters should not be
3547 * logged.
3548 *
3549 * @return built message
3550 * @since 2.6
3551 */
3552 EntryMessage traceEntry();
3553
3554 /**
3555 * Logs entry to a method along with its parameters. For example,
3556 *
3557 * <pre>
3558 * public void doSomething(String foo, int bar) {
3559 * LOGGER.traceEntry("Parameters: {} and {}", foo, bar);
3560 * // do something
3561 * }
3562 * </pre>
3563 * or:
3564 * <pre>
3565 * public int doSomething(String foo, int bar) {
3566 * Message m = LOGGER.traceEntry("doSomething(foo={}, bar={})", foo, bar);
3567 * // do something
3568 * return traceExit(m, value);
3569 * }
3570 * </pre>
3571 *
3572 * @param format The format String for the parameters.
3573 * @param params The parameters to the method.
3574 * @return The built Message
3575 *
3576 * @since 2.6
3577 */
3578 EntryMessage traceEntry(String format, Object... params);
3579
3580 /**
3581 * Logs entry to a method along with its parameters. For example,
3582 *
3583 * <pre>
3584 * public void doSomething(Request foo) {
3585 * LOGGER.traceEntry(()->gson.toJson(foo));
3586 * // do something
3587 * }
3588 * </pre>
3589 *
3590 * @param paramSuppliers The Suppliers for the parameters to the method.
3591 * @return built message
3592 *
3593 * @since 2.6
3594 */
3595 EntryMessage traceEntry(Supplier<?>... paramSuppliers);
3596
3597 /**
3598 * Logs entry to a method along with its parameters. For example,
3599 *
3600 * <pre>
3601 * public void doSomething(String foo, int bar) {
3602 * LOGGER.traceEntry("Parameters: {} and {}", ()->gson.toJson(foo), ()-> bar);
3603 * // do something
3604 * }
3605 * </pre>
3606 *
3607 * @param format The format String for the parameters.
3608 * @param paramSuppliers The Suppliers for the parameters to the method.
3609 * @return built message
3610 *
3611 * @since 2.6
3612 */
3613 EntryMessage traceEntry(String format, Supplier<?>... paramSuppliers);
3614
3615 /**
3616 * Logs entry to a method using a Message to describe the parameters.
3617 * <pre>
3618 * public void doSomething(Request foo) {
3619 * LOGGER.traceEntry(new JsonMessage(foo));
3620 * // do something
3621 * }
3622 * </pre>
3623 * <p>
3624 * Avoid passing a {@code ReusableMessage} to this method (therefore, also avoid passing messages created by
3625 * calling {@code logger.getMessageFactory().newMessage("some message")}): Log4j will replace such messages with
3626 * an immutable message to prevent situations where the reused message instance is modified by subsequent calls to
3627 * the logger before the returned {@code EntryMessage} is fully processed.
3628 * </p>
3629 *
3630 * @param message The message. Avoid specifying a ReusableMessage, use immutable messages instead.
3631 * @return the built message
3632 *
3633 * @since 2.6
3634 * @see org.apache.logging.log4j.message.ReusableMessage
3635 */
3636 EntryMessage traceEntry(Message message);
3637
3638 /**
3639 * Logs exit from a method. Used for methods that do not return anything.
3640 *
3641 * @since 2.6
3642 */
3643 void traceExit();
3644
3645 /**
3646 * Logs exiting from a method with the result. This may be coded as:
3647 *
3648 * <pre>
3649 * return LOGGER.traceExit(myResult);
3650 * </pre>
3651 *
3652 * @param <R> The type of the parameter and object being returned.
3653 * @param result The result being returned from the method call.
3654 * @return the result.
3655 *
3656 * @since 2.6
3657 */
3658 <R> R traceExit(R result);
3659
3660 /**
3661 * Logs exiting from a method with the result. This may be coded as:
3662 *
3663 * <pre>
3664 * return LOGGER.traceExit("Result: {}", myResult);
3665 * </pre>
3666 *
3667 * @param <R> The type of the parameter and object being returned.
3668 * @param format The format String for the result.
3669 * @param result The result being returned from the method call.
3670 * @return the result.
3671 *
3672 * @since 2.6
3673 */
3674 <R> R traceExit(String format, R result);
3675
3676 /**
3677 * Logs exiting from a method with no result. Allows custom formatting of the result. This may be coded as:
3678 *
3679 * <pre>
3680 * public long doSomething(int a, int b) {
3681 * EntryMessage m = traceEntry("doSomething(a={}, b={})", a, b);
3682 * // ...
3683 * return LOGGER.traceExit(m);
3684 * }
3685 * </pre>
3686 * @param message The Message containing the formatted result.
3687 *
3688 * @since 2.6
3689 */
3690 void traceExit(EntryMessage message);
3691
3692 /**
3693 * Logs exiting from a method with the result. Allows custom formatting of the result. This may be coded as:
3694 *
3695 * <pre>
3696 * public long doSomething(int a, int b) {
3697 * EntryMessage m = traceEntry("doSomething(a={}, b={})", a, b);
3698 * // ...
3699 * return LOGGER.traceExit(m, myResult);
3700 * }
3701 * </pre>
3702 * @param message The Message containing the formatted result.
3703 * @param result The result being returned from the method call.
3704 *
3705 * @param <R> The type of the parameter and object being returned.
3706 * @return the result.
3707 *
3708 * @since 2.6
3709 */
3710 <R> R traceExit(EntryMessage message, R result);
3711
3712 /**
3713 * Logs exiting from a method with the result. Allows custom formatting of the result. This may be coded as:
3714 *
3715 * <pre>
3716 * return LOGGER.traceExit(new JsonMessage(myResult), myResult);
3717 * </pre>
3718 * @param message The Message containing the formatted result.
3719 * @param result The result being returned from the method call.
3720 *
3721 * @param <R> The type of the parameter and object being returned.
3722 * @return the result.
3723 *
3724 * @since 2.6
3725 */
3726 <R> R traceExit(Message message, R result);
3727
3728 /**
3729 * Logs a message with the specific Marker at the {@link Level#WARN WARN} level.
3730 *
3731 * @param marker the marker data specific to this log statement
3732 * @param msg the message string to be logged
3733 */
3734 void warn(Marker marker, Message msg);
3735
3736 /**
3737 * Logs a message with the specific Marker at the {@link Level#WARN WARN} level.
3738 *
3739 * @param marker the marker data specific to this log statement
3740 * @param msg the message string to be logged
3741 * @param t A Throwable or null.
3742 */
3743 void warn(Marker marker, Message msg, Throwable t);
3744
3745 /**
3746 * Logs a message which is only to be constructed if the logging level is the {@link Level#WARN WARN} level with the
3747 * specified Marker. The {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the
3748 * {@code Message}.
3749 *
3750 * @param marker the marker data specific to this log statement
3751 * @param msgSupplier A function, which when called, produces the desired log message.
3752 * @since 2.4
3753 */
3754 void warn(Marker marker, MessageSupplier msgSupplier);
3755
3756 /**
3757 * Logs a message (only to be constructed if the logging level is the {@link Level#WARN WARN} level) with the
3758 * specified Marker and including the stack warn of the {@link Throwable} <code>t</code> passed as parameter. The
3759 * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.
3760 *
3761 * @param marker the marker data specific to this log statement
3762 * @param msgSupplier A function, which when called, produces the desired log message.
3763 * @param t A Throwable or null.
3764 * @since 2.4
3765 */
3766 void warn(Marker marker, MessageSupplier msgSupplier, Throwable t);
3767
3768 /**
3769 * Logs a message CharSequence with the {@link Level#WARN WARN} level.
3770 *
3771 * @param marker the marker data specific to this log statement
3772 * @param message the message CharSequence to log.
3773 */
3774 void warn(Marker marker, CharSequence message);
3775
3776 /**
3777 * Logs a CharSequence at the {@link Level#WARN WARN} level including the stack trace of the {@link Throwable}
3778 * <code>t</code> passed as parameter.
3779 *
3780 * @param marker the marker data specific to this log statement
3781 * @param message the message CharSequence to log.
3782 * @param t the exception to log, including its stack trace.
3783 */
3784 void warn(Marker marker, CharSequence message, Throwable t);
3785
3786 /**
3787 * Logs a message object with the {@link Level#WARN WARN} level.
3788 *
3789 * @param marker the marker data specific to this log statement
3790 * @param message the message object to log.
3791 */
3792 void warn(Marker marker, Object message);
3793
3794 /**
3795 * Logs a message at the {@link Level#WARN WARN} level including the stack trace of the {@link Throwable}
3796 * <code>t</code> passed as parameter.
3797 *
3798 * @param marker the marker data specific to this log statement
3799 * @param message the message object to log.
3800 * @param t the exception to log, including its stack trace.
3801 */
3802 void warn(Marker marker, Object message, Throwable t);
3803
3804 /**
3805 * Logs a message object with the {@link Level#WARN WARN} level.
3806 *
3807 * @param marker the marker data specific to this log statement
3808 * @param message the message object to log.
3809 */
3810 void warn(Marker marker, String message);
3811
3812 /**
3813 * Logs a message with parameters at the {@link Level#WARN WARN} level.
3814 *
3815 * @param marker the marker data specific to this log statement.
3816 * @param message the message to log; the format depends on the message factory.
3817 * @param params parameters to the message.
3818 * @see #getMessageFactory()
3819 */
3820 void warn(Marker marker, String message, Object... params);
3821
3822 /**
3823 * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#WARN
3824 * WARN} level.
3825 *
3826 * @param marker the marker data specific to this log statement
3827 * @param message the message to log; the format depends on the message factory.
3828 * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.
3829 * @since 2.4
3830 */
3831 void warn(Marker marker, String message, Supplier<?>... paramSuppliers);
3832
3833 /**
3834 * Logs a message at the {@link Level#WARN WARN} level including the stack trace of the {@link Throwable}
3835 * <code>t</code> passed as parameter.
3836 *
3837 * @param marker the marker data specific to this log statement
3838 * @param message the message object to log.
3839 * @param t the exception to log, including its stack trace.
3840 */
3841 void warn(Marker marker, String message, Throwable t);
3842
3843 /**
3844 * Logs a message which is only to be constructed if the logging level is the {@link Level#WARN WARN} level with the
3845 * specified Marker.
3846 *
3847 * @param marker the marker data specific to this log statement
3848 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
3849 * message factory.
3850 * @since 2.4
3851 */
3852 void warn(Marker marker, Supplier<?> msgSupplier);
3853
3854 /**
3855 * Logs a message (only to be constructed if the logging level is the {@link Level#WARN WARN} level) with the
3856 * specified Marker and including the stack warn of the {@link Throwable} <code>t</code> passed as parameter.
3857 *
3858 * @param marker the marker data specific to this log statement
3859 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
3860 * message factory.
3861 * @param t A Throwable or null.
3862 * @since 2.4
3863 */
3864 void warn(Marker marker, Supplier<?> msgSupplier, Throwable t);
3865
3866 /**
3867 * Logs a message with the specific Marker at the {@link Level#WARN WARN} level.
3868 *
3869 * @param msg the message string to be logged
3870 */
3871 void warn(Message msg);
3872
3873 /**
3874 * Logs a message with the specific Marker at the {@link Level#WARN WARN} level.
3875 *
3876 * @param msg the message string to be logged
3877 * @param t A Throwable or null.
3878 */
3879 void warn(Message msg, Throwable t);
3880
3881 /**
3882 * Logs a message which is only to be constructed if the logging level is the {@link Level#WARN WARN} level. The
3883 * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.
3884 *
3885 * @param msgSupplier A function, which when called, produces the desired log message.
3886 * @since 2.4
3887 */
3888 void warn(MessageSupplier msgSupplier);
3889
3890 /**
3891 * Logs a message (only to be constructed if the logging level is the {@link Level#WARN WARN} level) including the
3892 * stack warn of the {@link Throwable} <code>t</code> passed as parameter. The {@code MessageSupplier} may or may
3893 * not use the {@link MessageFactory} to construct the {@code Message}.
3894 *
3895 * @param msgSupplier A function, which when called, produces the desired log message.
3896 * @param t the exception to log, including its stack warn.
3897 * @since 2.4
3898 */
3899 void warn(MessageSupplier msgSupplier, Throwable t);
3900
3901 /**
3902 * Logs a message CharSequence with the {@link Level#WARN WARN} level.
3903 *
3904 * @param message the message CharSequence to log.
3905 */
3906 void warn(CharSequence message);
3907
3908 /**
3909 * Logs a CharSequence at the {@link Level#WARN WARN} level including the stack trace of the {@link Throwable}
3910 * <code>t</code> passed as parameter.
3911 *
3912 * @param message the message CharSequence to log.
3913 * @param t the exception to log, including its stack trace.
3914 */
3915 void warn(CharSequence message, Throwable t);
3916
3917 /**
3918 * Logs a message object with the {@link Level#WARN WARN} level.
3919 *
3920 * @param message the message object to log.
3921 */
3922 void warn(Object message);
3923
3924 /**
3925 * Logs a message at the {@link Level#WARN WARN} level including the stack trace of the {@link Throwable}
3926 * <code>t</code> passed as parameter.
3927 *
3928 * @param message the message object to log.
3929 * @param t the exception to log, including its stack trace.
3930 */
3931 void warn(Object message, Throwable t);
3932
3933 /**
3934 * Logs a message object with the {@link Level#WARN WARN} level.
3935 *
3936 * @param message the message string to log.
3937 */
3938 void warn(String message);
3939
3940 /**
3941 * Logs a message with parameters at the {@link Level#WARN WARN} level.
3942 *
3943 * @param message the message to log; the format depends on the message factory.
3944 * @param params parameters to the message.
3945 * @see #getMessageFactory()
3946 */
3947 void warn(String message, Object... params);
3948
3949 /**
3950 * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#WARN
3951 * WARN} level.
3952 *
3953 * @param message the message to log; the format depends on the message factory.
3954 * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.
3955 * @since 2.4
3956 */
3957 void warn(String message, Supplier<?>... paramSuppliers);
3958
3959 /**
3960 * Logs a message at the {@link Level#WARN WARN} level including the stack trace of the {@link Throwable}
3961 * <code>t</code> passed as parameter.
3962 *
3963 * @param message the message object to log.
3964 * @param t the exception to log, including its stack trace.
3965 */
3966 void warn(String message, Throwable t);
3967
3968 /**
3969 * Logs a message which is only to be constructed if the logging level is the {@link Level#WARN WARN} level.
3970 *
3971 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
3972 * message factory.
3973 * @since 2.4
3974 */
3975 void warn(Supplier<?> msgSupplier);
3976
3977 /**
3978 * Logs a message (only to be constructed if the logging level is the {@link Level#WARN WARN} level) including the
3979 * stack warn of the {@link Throwable} <code>t</code> passed as parameter.
3980 *
3981 * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the
3982 * message factory.
3983 * @param t the exception to log, including its stack warn.
3984 * @since 2.4
3985 */
3986 void warn(Supplier<?> msgSupplier, Throwable t);
3987
3988 /**
3989 * Logs a message with parameters at warn level.
3990 *
3991 * @param marker the marker data specific to this log statement
3992 * @param message the message to log; the format depends on the message factory.
3993 * @param p0 parameter to the message.
3994 */
3995 void warn(Marker marker, String message, Object p0);
3996
3997 /**
3998 * Logs a message with parameters at warn level.
3999 *
4000 * @param marker the marker data specific to this log statement
4001 * @param message the message to log; the format depends on the message factory.
4002 * @param p0 parameter to the message.
4003 * @param p1 parameter to the message.
4004 */
4005 void warn(Marker marker, String message, Object p0, Object p1);
4006
4007 /**
4008 * Logs a message with parameters at warn level.
4009 *
4010 * @param marker the marker data specific to this log statement
4011 * @param message the message to log; the format depends on the message factory.
4012 * @param p0 parameter to the message.
4013 * @param p1 parameter to the message.
4014 * @param p2 parameter to the message.
4015 */
4016 void warn(Marker marker, String message, Object p0, Object p1, Object p2);
4017
4018 /**
4019 * Logs a message with parameters at warn level.
4020 *
4021 * @param marker the marker data specific to this log statement
4022 * @param message the message to log; the format depends on the message factory.
4023 * @param p0 parameter to the message.
4024 * @param p1 parameter to the message.
4025 * @param p2 parameter to the message.
4026 * @param p3 parameter to the message.
4027 */
4028 void warn(Marker marker, String message, Object p0, Object p1, Object p2, Object p3);
4029
4030 /**
4031 * Logs a message with parameters at warn level.
4032 *
4033 * @param marker the marker data specific to this log statement
4034 * @param message the message to log; the format depends on the message factory.
4035 * @param p0 parameter to the message.
4036 * @param p1 parameter to the message.
4037 * @param p2 parameter to the message.
4038 * @param p3 parameter to the message.
4039 * @param p4 parameter to the message.
4040 */
4041 void warn(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4);
4042
4043 /**
4044 * Logs a message with parameters at warn level.
4045 *
4046 * @param marker the marker data specific to this log statement
4047 * @param message the message to log; the format depends on the message factory.
4048 * @param p0 parameter to the message.
4049 * @param p1 parameter to the message.
4050 * @param p2 parameter to the message.
4051 * @param p3 parameter to the message.
4052 * @param p4 parameter to the message.
4053 * @param p5 parameter to the message.
4054 */
4055 void warn(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);
4056
4057 /**
4058 * Logs a message with parameters at warn level.
4059 *
4060 * @param marker the marker data specific to this log statement
4061 * @param message the message to log; the format depends on the message factory.
4062 * @param p0 parameter to the message.
4063 * @param p1 parameter to the message.
4064 * @param p2 parameter to the message.
4065 * @param p3 parameter to the message.
4066 * @param p4 parameter to the message.
4067 * @param p5 parameter to the message.
4068 * @param p6 parameter to the message.
4069 */
4070 void warn(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5,
4071 Object p6);
4072
4073 /**
4074 * Logs a message with parameters at warn level.
4075 *
4076 * @param marker the marker data specific to this log statement
4077 * @param message the message to log; the format depends on the message factory.
4078 * @param p0 parameter to the message.
4079 * @param p1 parameter to the message.
4080 * @param p2 parameter to the message.
4081 * @param p3 parameter to the message.
4082 * @param p4 parameter to the message.
4083 * @param p5 parameter to the message.
4084 * @param p6 parameter to the message.
4085 * @param p7 parameter to the message.
4086 */
4087 void warn(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
4088 Object p7);
4089
4090 /**
4091 * Logs a message with parameters at warn level.
4092 *
4093 * @param marker the marker data specific to this log statement
4094 * @param message the message to log; the format depends on the message factory.
4095 * @param p0 parameter to the message.
4096 * @param p1 parameter to the message.
4097 * @param p2 parameter to the message.
4098 * @param p3 parameter to the message.
4099 * @param p4 parameter to the message.
4100 * @param p5 parameter to the message.
4101 * @param p6 parameter to the message.
4102 * @param p7 parameter to the message.
4103 * @param p8 parameter to the message.
4104 */
4105 void warn(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
4106 Object p7, Object p8);
4107
4108 /**
4109 * Logs a message with parameters at warn level.
4110 *
4111 * @param marker the marker data specific to this log statement
4112 * @param message the message to log; the format depends on the message factory.
4113 * @param p0 parameter to the message.
4114 * @param p1 parameter to the message.
4115 * @param p2 parameter to the message.
4116 * @param p3 parameter to the message.
4117 * @param p4 parameter to the message.
4118 * @param p5 parameter to the message.
4119 * @param p6 parameter to the message.
4120 * @param p7 parameter to the message.
4121 * @param p8 parameter to the message.
4122 * @param p9 parameter to the message.
4123 */
4124 void warn(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
4125 Object p7, Object p8, Object p9);
4126
4127 /**
4128 * Logs a message with parameters at warn level.
4129 *
4130 * @param message the message to log; the format depends on the message factory.
4131 * @param p0 parameter to the message.
4132 */
4133 void warn(String message, Object p0);
4134
4135 /**
4136 * Logs a message with parameters at warn level.
4137 *
4138 * @param message the message to log; the format depends on the message factory.
4139 * @param p0 parameter to the message.
4140 * @param p1 parameter to the message.
4141 */
4142 void warn(String message, Object p0, Object p1);
4143
4144 /**
4145 * Logs a message with parameters at warn level.
4146 *
4147 * @param message the message to log; the format depends on the message factory.
4148 * @param p0 parameter to the message.
4149 * @param p1 parameter to the message.
4150 * @param p2 parameter to the message.
4151 */
4152 void warn(String message, Object p0, Object p1, Object p2);
4153
4154 /**
4155 * Logs a message with parameters at warn level.
4156 *
4157 * @param message the message to log; the format depends on the message factory.
4158 * @param p0 parameter to the message.
4159 * @param p1 parameter to the message.
4160 * @param p2 parameter to the message.
4161 * @param p3 parameter to the message.
4162 */
4163 void warn(String message, Object p0, Object p1, Object p2, Object p3);
4164
4165 /**
4166 * Logs a message with parameters at warn level.
4167 *
4168 * @param message the message to log; the format depends on the message factory.
4169 * @param p0 parameter to the message.
4170 * @param p1 parameter to the message.
4171 * @param p2 parameter to the message.
4172 * @param p3 parameter to the message.
4173 * @param p4 parameter to the message.
4174 */
4175 void warn(String message, Object p0, Object p1, Object p2, Object p3, Object p4);
4176
4177 /**
4178 * Logs a message with parameters at warn level.
4179 *
4180 * @param message the message to log; the format depends on the message factory.
4181 * @param p0 parameter to the message.
4182 * @param p1 parameter to the message.
4183 * @param p2 parameter to the message.
4184 * @param p3 parameter to the message.
4185 * @param p4 parameter to the message.
4186 * @param p5 parameter to the message.
4187 */
4188 void warn(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);
4189
4190 /**
4191 * Logs a message with parameters at warn level.
4192 *
4193 * @param message the message to log; the format depends on the message factory.
4194 * @param p0 parameter to the message.
4195 * @param p1 parameter to the message.
4196 * @param p2 parameter to the message.
4197 * @param p3 parameter to the message.
4198 * @param p4 parameter to the message.
4199 * @param p5 parameter to the message.
4200 * @param p6 parameter to the message.
4201 */
4202 void warn(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6);
4203
4204 /**
4205 * Logs a message with parameters at warn level.
4206 *
4207 * @param message the message to log; the format depends on the message factory.
4208 * @param p0 parameter to the message.
4209 * @param p1 parameter to the message.
4210 * @param p2 parameter to the message.
4211 * @param p3 parameter to the message.
4212 * @param p4 parameter to the message.
4213 * @param p5 parameter to the message.
4214 * @param p6 parameter to the message.
4215 * @param p7 parameter to the message.
4216 */
4217 void warn(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7);
4218
4219 /**
4220 * Logs a message with parameters at warn level.
4221 *
4222 * @param message the message to log; the format depends on the message factory.
4223 * @param p0 parameter to the message.
4224 * @param p1 parameter to the message.
4225 * @param p2 parameter to the message.
4226 * @param p3 parameter to the message.
4227 * @param p4 parameter to the message.
4228 * @param p5 parameter to the message.
4229 * @param p6 parameter to the message.
4230 * @param p7 parameter to the message.
4231 * @param p8 parameter to the message.
4232 */
4233 void warn(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,
4234 Object p8);
4235
4236 /**
4237 * Logs a message with parameters at warn level.
4238 *
4239 * @param message the message to log; the format depends on the message factory.
4240 * @param p0 parameter to the message.
4241 * @param p1 parameter to the message.
4242 * @param p2 parameter to the message.
4243 * @param p3 parameter to the message.
4244 * @param p4 parameter to the message.
4245 * @param p5 parameter to the message.
4246 * @param p6 parameter to the message.
4247 * @param p7 parameter to the message.
4248 * @param p8 parameter to the message.
4249 * @param p9 parameter to the message.
4250 */
4251 void warn(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,
4252 Object p8, Object p9);
4253
4254 }