Module: Logger

Logger

Logger Decorator

A bitmask is used to define the logLevel of the whole application (if 'common.logLevel' is set in AppContext). The numeric logLevel constants are defined on the $log service as $log.LOG_LEVEL_LOG, $log.LOG_LEVEL_DEBUG and so on.

Because a bitwise & is used to determine the logLevel you have to specify all levels you want to have enabled using a bitwise | operator. You get the same logLevel by adding up the numeric value of all wanted levels and subtracting 1 from the result.

The decorator also provides the new logging methods $log.request(logMessage) and $log.event(logMessage) which are described inside of LoggerDecorator. This section also provides information about the usage of $log.ADVANCED_FORMATTER.

Author:
  • Marco Lehmann <marco.lehmann (at) kiwigrid.com>
Source:

Example

// enable levels 'log', 'debug', 'info'
"logLevel": $log.LOG_LEVEL_LOG | $log.LOG_LEVEL_DEBUG | $log.LOG_LEVEL_INFO
// same logLevel in numeric notation ($log.LOG_LEVEL_LOG + $log.LOG_LEVEL_DEBUG + $log.LOG_LEVEL_INFO)
"logLevel": 7

Classes

LoggerConfig
LoggerDecorator

Members

<inner, constant> LOG_LEVEL_DEBUG :number

Usage of $log.debug is enabled.

Type:
  • number
Source:

<inner, constant> LOG_LEVEL_ERROR :number

Usage of $log.error is enabled.

Type:
  • number
Source:

<inner, constant> LOG_LEVEL_INFO :number

Usage of $log.info is enabled.

Type:
  • number
Source:

<inner, constant> LOG_LEVEL_LOG :number

Usage of $log.log is enabled.

Type:
  • number
Source:

<inner, constant> LOG_LEVEL_WARN :number

Usage of $log.warn is enabled.

Type:
  • number
Source:

Methods

<inner> ADVANCED_FORMATTER(messages) → {void}

Formats a message in an advanced, colored manner.

Parameters:
Name Type Description
messages Array Messages as array
Source:
Returns:
void returns nothing
Example
angular.module('exampleApp', ['keta.services.Logger'])
    .controller('ExampleController', function($log) {
        $log.request([request, response], $log.ADVANCED_FORMATTER);
    });

<inner> event(messages, formatter) → {void}

Logs a message-based event using console.log. Additionally a custom or predefined formatter (ADVANCED_FORMATTER) can be specified.

Parameters:
Name Type Argument Description
messages Array Messages to log
formatter function <optional>
Formatter to use
Source:
Returns:
void returns nothing
Example
angular.module('exampleApp', ['keta.services.Logger'])
    .controller('ExampleController', function($log) {

        // use no formatter
        $log.event(event);

        // use ADVANCED_FORMATTER
        $log.event(event, $log.ADVANCED_FORMATTER);

        // use custom formatter
        $log.event(event, function(messages) {
            // custom logging
        });

    });

<inner> request(messages, formatter) → {void}

Logs a message-based request using console.log. Additionally a custom or predefined formatter (ADVANCED_FORMATTER) can be specified.

Parameters:
Name Type Argument Description
messages Array Messages to log
formatter function <optional>
Formatter to use
Source:
Returns:
void returns nothing
Example
angular.module('exampleApp', ['keta.services.Logger'])
    .controller('ExampleController', function($log) {

        // use no formatter
        $log.request([request, response]);

        // use ADVANCED_FORMATTER
        $log.request([request, response], $log.ADVANCED_FORMATTER);

        // use custom formatter
        $log.request([request, response], function(messages) {
            // custom logging
        });

    });