org.apache.ignite.logger.java

## Class JavaLogger

- java.lang.Object
- - org.apache.ignite.logger.java.JavaLogger

All Implemented Interfaces:
  IgniteLogger, IgniteLoggerEx

    public class JavaLogger
    extends Object
    implements IgniteLoggerEx

Logger to use with Java logging. Implementation simply delegates to Java Logging.

Here is an example of configuring Java logger in Ignite configuration Spring file to work over log4j implementation. Note that we use the same configuration file as we provide by default:

          ...
          <property name="gridLogger">
              <bean class="org.apache.ignite.logger.java.JavaLogger">
                  <constructor-arg type="java.util.logging.Logger">
                      <bean class="java.util.logging.Logger">
                          <constructor-arg type="java.lang.String" value="global"/>
                      </bean>
                  </constructor-arg>
              </bean>
          </property>
          ...

or

          ...
          <property name="gridLogger">
              <bean class="org.apache.ignite.logger.java.JavaLogger"/>
          </property>
          ...

And the same configuration if you'd like to configure Ignite in your code:

          IgniteConfiguration cfg = new IgniteConfiguration();
          ...
          IgniteLogger log = new JavaLogger(Logger.global);
          ...
          cfg.setGridLogger(log);

or which is actually the same:

          IgniteConfiguration cfg = new IgniteConfiguration();
          ...
          IgniteLogger log = new JavaLogger();
          ...
          cfg.setGridLogger(log);

Please take a look at `Logger` javadoc for additional information.

It's recommended to use Ignite logger injection instead of using/instantiating logger in your task/job code. See `LoggerResource` annotation about logger injection.

### Field Summary

Fields
`static String` `DFLT_CONFIG_PATH`

### Fields inherited from interface org.apache.ignite.IgniteLogger

`DEV_ONLY`

### Constructor Summary

Constructors
Constructor and Description
`JavaLogger()` Creates new logger.
`JavaLogger(boolean init)` Creates new logger.
`JavaLogger(Logger impl)` Creates new logger with given implementation.
`JavaLogger(Logger impl, boolean configure)` Creates new logger with given implementation.

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`void` `addConsoleAppender(boolean clearOutput)` Adds console appender to the logger.
`void` `debug(String msg)` Logs out debug message.
`void` `error(String msg)` Logs out error message.
`void` `error(String msg, @Nullable Throwable e)` Logs error message with optional exception.
`@Nullable String` `fileName()` Gets name of the file being logged to if one is configured or `null` otherwise.
`void` `flush()` Flush any buffered output.
`IgniteLogger` `getLogger(Object ctgr)` Creates new logger with given category based off the current instance.
`void` `info(String msg)` Logs out information message.
`static boolean` `isConfigured()` Checks if logger is already configured within this VM or not.
`boolean` `isDebugEnabled()` Tests whether `debug` level is enabled.
`boolean` `isInfoEnabled()` Tests whether `info` level is enabled.
`boolean` `isQuiet()` Tests whether Logger is in "Quiet mode".
`boolean` `isTraceEnabled()` Tests whether `trace` level is enabled.
`void` `setApplicationAndNode(@Nullable String application, @Nullable UUID nodeId)` Sets application name and node ID.
`void` `setWorkDirectory(String workDir)` Set work directory.
`String` `toString()`
`void` `trace(String msg)` Logs out trace message.
`void` `warning(String msg)` Logs out warning message.
`void` `warning(String msg, @Nullable Throwable e)` Logs out warning message with optional exception.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface org.apache.ignite.IgniteLogger

`debug, error, info, trace, warning`

### Field Detail

#### DFLT_CONFIG_PATH

    public static final String DFLT_CONFIG_PATH

See Also:
  Constant Field Values

### Constructor Detail

#### JavaLogger

    public JavaLogger()

Creates new logger.

#### JavaLogger

    public JavaLogger(boolean init)

Creates new logger.

Parameters:
  `init` - If `true`, then a default console appender will be created. If `false`, then no implicit initialization will take place, and java logger should be configured prior to calling this constructor.

#### JavaLogger

    public JavaLogger(Logger impl)

Creates new logger with given implementation.

Parameters:
  `impl` - Java Logging implementation to use.

#### JavaLogger

    public JavaLogger(Logger impl,
                      boolean configure)

Creates new logger with given implementation.

Parameters:
  `impl` - Java Logging implementation to use.
  `configure` - Configure logger.

### Method Detail

#### isConfigured

    public static boolean isConfigured()

Checks if logger is already configured within this VM or not.

Returns:
  `True` if logger was already configured, `false` otherwise.

#### getLogger

    public IgniteLogger getLogger(Object ctgr)

Creates new logger with given category based off the current instance.

Specified by:
  `getLogger` in interface `IgniteLogger`
Parameters:
  `ctgr` - Category for new logger.
Returns:
  New logger with given category.

#### trace

    public void trace(String msg)

Logs out trace message.

Specified by:
  `trace` in interface `IgniteLogger`
Parameters:
  `msg` - Trace message.

#### debug

    public void debug(String msg)

Logs out debug message.

Specified by:
  `debug` in interface `IgniteLogger`
Parameters:
  `msg` - Debug message.

#### info

    public void info(String msg)

Logs out information message.

Specified by:
  `info` in interface `IgniteLogger`
Parameters:
  `msg` - Information message.

#### warning

    public void warning(String msg)

Logs out warning message.

Specified by:
  `warning` in interface `IgniteLogger`
Parameters:
  `msg` - Warning message.

#### warning

    public void warning(String msg,
                        @Nullable
                        @Nullable Throwable e)

Logs out warning message with optional exception.

Specified by:
  `warning` in interface `IgniteLogger`
Parameters:
  `msg` - Warning message.
  `e` - Optional exception (can be `null`).

#### error

    public void error(String msg)

Logs out error message.

Specified by:
  `error` in interface `IgniteLogger`
Parameters:
  `msg` - Error message.

#### isQuiet

    public boolean isQuiet()

Tests whether Logger is in "Quiet mode".

Specified by:
  `isQuiet` in interface `IgniteLogger`
Returns:
  `true` "Quiet mode" is enabled, `false` otherwise

#### error

    public void error(String msg,
                      @Nullable
                      @Nullable Throwable e)

Logs error message with optional exception.

Specified by:
  `error` in interface `IgniteLogger`
Parameters:
  `msg` - Error message.
  `e` - Optional exception (can be `null`).

#### isTraceEnabled

    public boolean isTraceEnabled()

Tests whether `trace` level is enabled.

Specified by:
  `isTraceEnabled` in interface `IgniteLogger`
Returns:
  `true` in case when `trace` level is enabled, `false` otherwise.

#### isDebugEnabled

    public boolean isDebugEnabled()

Tests whether `debug` level is enabled.

Specified by:
  `isDebugEnabled` in interface `IgniteLogger`
Returns:
  `true` in case when `debug` level is enabled, `false` otherwise.

#### isInfoEnabled

    public boolean isInfoEnabled()

Tests whether `info` level is enabled.

Specified by:
  `isInfoEnabled` in interface `IgniteLogger`
Returns:
  `true` in case when `info` level is enabled, `false` otherwise.

#### fileName

    @Nullable
    public @Nullable String fileName()

Gets name of the file being logged to if one is configured or `null` otherwise.

Specified by:
  `fileName` in interface `IgniteLogger`
Returns:
  Name of the file being logged to if one is configured or `null` otherwise.

#### addConsoleAppender

    public void addConsoleAppender(boolean clearOutput)

Adds console appender to the logger.

Specified by:
  `addConsoleAppender` in interface `IgniteLoggerEx`
Parameters:
  `clearOutput` - If `true` then console output must be configured without any additional info like time, message level, thread info, etc.

#### flush

    public void flush()

Flush any buffered output.

Specified by:
  `flush` in interface `IgniteLoggerEx`

#### setWorkDirectory

    public void setWorkDirectory(String workDir)

Set work directory.

Parameters:
  `workDir` - Work directory.

#### setApplicationAndNode

    public void setApplicationAndNode(@Nullable
                                      @Nullable String application,
                                      @Nullable
                                      @Nullable UUID nodeId)

Sets application name and node ID.

Specified by:
  `setApplicationAndNode` in interface `IgniteLoggerEx`
Parameters:
  `application` - Application.
  `nodeId` - Node ID.

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`

${current.year} Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Database and Caching Platform | : ver. 2.15.0
Release Date | : April 25 2023