heros.helper - heros 0.8.10 documentation

Skip to content
Back to top
View this page

# heros.helper

## Attributes

`SPAM` |
`log` |

## Classes

`Logger` | Instances of the Logger class represent a single logging channel. A
`ColoredFormatter` | Logging formatter that adds ANSI colors to logging output.

## Functions

`object_name_from_keyexpr`(key_expr, ns_objects, realm) |
`full_classname`(o) | Return the fully qualified class name of an object.
`get_heros_pkg_versions`(→ dict) | Returns the versions of the installed heros packages
`get_logger`(→ logging.Logger) |

## Module Contents

heros.helper.object_name_from_keyexpr(key_expr, ns_objects, realm, endpoint='.*')

heros.helper.full_classname(o)

  Return the fully qualified class name of an object.

  Parameters:

    o – object

  Returns:

    fully qualified module and class name

heros.helper.get_heros_pkg_versions() → dict

  Returns the versions of the installed heros packages

  Returns:

    A dictionary with the package names as keys and the versions as values. If package version is not

      available, the value is “n.a.”, if package is not installed the value is “not installed”.

  Return type:

    dict

heros.helper.SPAM = 5

class heros.helper.Logger(*args, **kwargs)

  Bases: `logging.Logger`

  Instances of the Logger class represent a single logging channel. A “logging channel” indicates an area of an application. Exactly how an “area” is defined is up to the application developer. Since an application can have any number of areas, logging channels are identified by a unique string. Application areas can be nested (e.g. an area of “input processing” might include sub-areas “read CSV files”, “read XLS files” and “read Gnumeric files”). To cater for this natural nesting, channel names are organized into a namespace hierarchy where levels are separated by periods, much like the Java or Python package namespace. So in the instance given above, channel names might be “input” for the upper level, and “input.csv”, “input.xls” and “input.gnu” for the sub-levels. There is no arbitrary limit to the depth of nesting.

  setLevel(level, globally=False)

    Set logger level; optionally propagate to all existing loggers.

  spam(msg, *args, **kwargs)

    Log a SPAM-level message.

class heros.helper.ColoredFormatter(*args, **kwargs)

  Bases: `logging.Formatter`

  Logging formatter that adds ANSI colors to logging output.

  RESET = '\x1b[0m'
  RED = '\x1b[31m'
  GREEN = '\x1b[32m'
  YELLOW = '\x1b[33m'
  supports_color
  format(record)

    Format the specified record as text.

    The record’s attribute dictionary is used as the operand to a string formatting operation which yields the returned string. Before formatting the dictionary, a couple of preparatory steps are carried out. The message attribute of the record is computed using LogRecord.getMessage(). If the formatting string uses the time (as determined by a call to usesTime(), formatTime() is called to format the event time. If there is exception information, it is formatted using formatException() and appended to the message.

  _supports_color()

    Check if the current platform supports ANSI colors.

heros.helper.get_logger(name: str = 'heros') → logging.Logger

heros.helper.log