# cpl.logging

## cpl.logging.logger_abc

class `cpl.logging.logger_abc.``LoggerABC`

  Bases: `abc.ABC`

  abstract `debug`(name: str, message: str)

    Writes a debug message :param name: :param message: :return:

  abstract `error`(name: str, message: str, ex: Optional[Exception] = None)

    Writes an error :param name: :param message: :param ex: :return:

  abstract `fatal`(name: str, message: str, ex: Optional[Exception] = None)

    Writes an error and exits :param name: :param message: :param ex: :return:

  abstract `header`(string: str)

    Writes a header message :param string: :return:

  abstract `info`(name: str, message: str)

    Writes an information :param name: :param message: :return:

  abstract `trace`(name: str, message: str)

    Writes a trace message :param name: :param message: :return:

  abstract `warn`(name: str, message: str)

    Writes an warning :param name: :param message: :return:

## cpl.logging.logger_service

class `cpl.logging.logger_service.``Logger`(logging_settings: cpl.logging.logging_settings.LoggingSettings, time_format: cpl.time.time_format_settings.TimeFormatSettings, env: cpl.environment.application_environment_abc.ApplicationEnvironmentABC)

  Bases: `cpl.logging.logger_abc.LoggerABC`

  `create`() → None

    Creates path tree and logfile :return:

  `debug`(name: str, message: str)

    Writes a debug message :param name: :param message: :return:

  `error`(name: str, message: str, ex: Optional[Exception] = None)

    Writes an error :param name: :param message: :param ex: :return:

  `fatal`(name: str, message: str, ex: Optional[Exception] = None)

    Writes an error and exits :param name: :param message: :param ex: :return:

  `header`(string: str)

    Writes a header message :param string: :return:

  `info`(name: str, message: str)

    Writes an information :param name: :param message: :return:

  `trace`(name: str, message: str)

    Writes a trace message :param name: :param message: :return:

  `warn`(name: str, message: str)

    Writes an warning :param name: :param message: :return:

## cpl.logging.logging_level_enum

class `cpl.logging.logging_level_enum.``LoggingLevelEnum`(value)

  Bases: `enum.Enum`

  An enumeration.

  `DEBUG` = 5
  `ERROR` = 2
  `FATAL` = 1
  `INFO` = 4
  `OFF` = 0
  `TRACE` = 6
  `WARN` = 3

## cpl.logging.logging_settings

class `cpl.logging.logging_settings.``LoggingSettings`

  Bases: `cpl.configuration.configuration_model_abc.ConfigurationModelABC`

  property `console`
  property `filename`
  `from_dict`(settings: dict)

    Converts attributes to dict

    > settings: `dict`

  property `level`
  property `path`

## cpl.logging.logging_settings_name_enum

class `cpl.logging.logging_settings_name_enum.``LoggingSettingsNameEnum`(value)

  Bases: `enum.Enum`

  An enumeration.

  `console_level` = 'ConsoleLogLevel'
  `file_level` = 'FileLogLevel'
  `filename` = 'Filename'
  `path` = 'Path'