Rand Stats

Log::Colored

cpan:TYIL

class Log::Colored

An implementation of Log with colors.

has Positional @!outputs

An array of hashes. Each has must have a handle key, with an IO::Handle to print messages to. A level key with an integer to signify a Log::Level is also required.

has Supplier $!messages

A supplier to emit messages to.

multi method emergency

multi method emergency(
    Str:D $message
) returns Mu

Send an emergency message.

class Str:D $message

The message to print.

multi method alert

multi method alert(
    Str:D $message
) returns Mu

Send an alert message.

class Str:D $message

The message to print.

multi method critical

multi method critical(
    Str:D $message
) returns Mu

Send a critical message.

class Str:D $message

The message to print.

multi method error

multi method error(
    Str:D $message
) returns Mu

Send an error message.

class Str:D $message

The message to print.

multi method warning

multi method warning(
    Str:D $message
) returns Mu

Send a warning message.

class Str:D $message

The message to print.

multi method notice

multi method notice(
    Str:D $message
) returns Mu

Send a notice message. This is the "normal" level to publish log entries on.

class Str:D $message

The message to print.

multi method info

multi method info(
    Str:D $message
) returns Mu

Send an informational message.

class Str:D $message

The message to print.

multi method debug

multi method debug(
    Str:D $message
) returns Mu

Send a debug message.

class Str:D $message

The message to print.

multi method add-output

multi method add-output(
    IO::Handle:D $handle,
    $level where { ... },
    Callable :$filter
) returns Mu

Add an output to the logger.

class IO::Handle:D $handle

The IO::Handle to write log messages to.

class $level where { ... }

The log level for this particular stream.

class Callable :$filter

A filter function to apply to any messages sent to the output.

method callee

method callee(
    Int:D $depth = 4
) returns Str

Convenience method to get the callee name. This is the package name if one exists, or the source file name.

class Int:D $depth = 4

The depth of which to get the callframe.

method message

method message(
    Str:D $message,
    Str:D $color
) returns Str

Convenience method for formatting the message as desired.

class Str:D $message

The original message to be logged.

class Str:D $color

A human readable identifier for the level.

NAME

Log::Colored

VERSION

0.1.1

AUTHOR

Patrick Spek p.spek@tyil.nl

LICENSE

Copyright © 2020

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, version 3.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this program. If not, see http://www.gnu.org/licenses/.