LogService
Date: 2016-06-25

org.osgi.service.log

## Interface LogService

-     public interface LogService

  Provides methods for bundles to write messages to the log.

  `LogService` methods are provided to log messages; optionally with a `ServiceReference` object or an exception.

  Bundles must log messages in the OSGi environment with a severity level according to the following hierarchy:

  1. `LOG_ERROR`
  2. `LOG_WARNING`
  3. `LOG_INFO`
  4. `LOG_DEBUG`

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `LOG_DEBUG` A debugging message (Value 4).
    `static int` | `LOG_ERROR` An error message (Value 1).
    `static int` | `LOG_INFO` An informational message (Value 3).
    `static int` | `LOG_WARNING` A warning message (Value 2).

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `log(int level, java.lang.String message)` Logs a message.
    `void` | `log(int level, java.lang.String message, java.lang.Throwable exception)` Logs a message with an exception.
    `void` | `log(org.osgi.framework.ServiceReference sr, int level, java.lang.String message)` Logs a message associated with a specific `ServiceReference` object.
    `void` | `log(org.osgi.framework.ServiceReference sr, int level, java.lang.String message, java.lang.Throwable exception)` Logs a message with an exception associated and a `ServiceReference` object.

- - ### Field Detail

    - #### LOG_ERROR

          static final int LOG_ERROR

      An error message (Value 1).

      This log entry indicates the bundle or service may not be functional.

      See Also:
        Constant Field Values

    - #### LOG_WARNING

          static final int LOG_WARNING

      A warning message (Value 2).

      This log entry indicates a bundle or service is still functioning but may experience problems in the future because of the warning condition.

      See Also:
        Constant Field Values

    - #### LOG_INFO

          static final int LOG_INFO

      An informational message (Value 3).

      This log entry may be the result of any change in the bundle or service and does not indicate a problem.

      See Also:
        Constant Field Values

    - #### LOG_DEBUG

          static final int LOG_DEBUG

      A debugging message (Value 4).

      This log entry is used for problem determination and may be irrelevant to anyone but the bundle developer.

      See Also:
        Constant Field Values

  - ### Method Detail

    - #### log

          void log(int level,
                 java.lang.String message)

      Logs a message.

      The `ServiceReference` field and the `Throwable` field of the `LogEntry` object will be set to `null`.

      Parameters:
        `level` - The severity of the message. This should be one of the defined log levels but may be any integer that is interpreted in a user defined way.
        `message` - Human readable string describing the condition or `null`.
      See Also:
        `LOG_ERROR`, `LOG_WARNING`, `LOG_INFO`, `LOG_DEBUG`

    - #### log

          void log(int level,
                 java.lang.String message,
                 java.lang.Throwable exception)

      Logs a message with an exception.

      The `ServiceReference` field of the `LogEntry` object will be set to `null`.

      Parameters:
        `level` - The severity of the message. This should be one of the defined log levels but may be any integer that is interpreted in a user defined way.
        `message` - The human readable string describing the condition or `null`.
        `exception` - The exception that reflects the condition or `null`.
      See Also:
        `LOG_ERROR`, `LOG_WARNING`, `LOG_INFO`, `LOG_DEBUG`

    - #### log

          void log(org.osgi.framework.ServiceReference sr,
                 int level,
                 java.lang.String message)

      Logs a message associated with a specific `ServiceReference` object.

      The `Throwable` field of the `LogEntry` will be set to `null`.

      Parameters:
        `sr` - The `ServiceReference` object of the service that this message is associated with or `null`.
        `level` - The severity of the message. This should be one of the defined log levels but may be any integer that is interpreted in a user defined way.
        `message` - Human readable string describing the condition or `null`.
      See Also:
        `LOG_ERROR`, `LOG_WARNING`, `LOG_INFO`, `LOG_DEBUG`

    - #### log

          void log(org.osgi.framework.ServiceReference sr,
                 int level,
                 java.lang.String message,
                 java.lang.Throwable exception)

      Logs a message with an exception associated and a `ServiceReference` object.
      Parameters:
        `sr` - The `ServiceReference` object of the service that this message is associated with.
        `level` - The severity of the message. This should be one of the defined log levels but may be any integer that is interpreted in a user defined way.
        `message` - Human readable string describing the condition or `null`.
        `exception` - The exception that reflects the condition or `null`.
      See Also:
        `LOG_ERROR`, `LOG_WARNING`, `LOG_INFO`, `LOG_DEBUG`