XS-Logger

a basic logger implemented in XS


License
Artistic-1.0-Perl

Documentation

NAME

XS::Logger - a basic logger implemented in XS

VERSION

version 0.005

SYNOPSIS

use XS::Logger;

# simple mode

$XS::Logger::PATH_FILE = "/var/log/xslogger.log"; # default file path

XS::Logger::info(  "something to log" );
XS::Logger::warn(  "something to warn" );
XS::Logger::error( "your error message: %d", 404 );

XS::Logger::die(   "something to log & die" );
XS::Logger::panic( "something to log & panic" );
XS::Logger::fatal( "something to log & fatal" );
XS::Logger::debug( "something to debug" );

# object oriented mode

my $log = XS::Logger->new( { color => 1, path => q{/var/log/xslogger.log} } );

$log->info(); # one empty line
$log->info( "something to log" );
$log->info( "a number %d", 42 );
$log->info( "a string '%s'", "banana" );

$log->warn( ... );
$log->error( ... );
$log->die( ... );
$log->panic( ... );
$log->fatal( ... );
$log->debug( ... );

DESCRIPTION

XS::Logger provides a light and friendly logger for your application.

NAME

XS::Logger - basic logger using XS

Usage

Log Levels

By default all logs message are displayed but you can limit the number of informations logged by setting a log level.

For example: setting a log level = INFO_LOG_LEVEL, will disable all the 'debug' informations preserving all other loggged events.

Setting the level can be done at construction time or run time

use XS::Logger qw{:all}; # import all log levels

my $log = XS::Logger->new( {
                              level  => DEBUG_LOG_LEVEL
                                   # or INFO_LOG_LEVEL
                                   # or WARN_LOG_LEVEL
                                   # or ERROR_LOG_LEVEL
                                   # or FATAL_LOG_LEVEL
                                   # or DISABLE_LOG_LEVEL
                              color  => 1,
                              path   => q{/var/log/xslogger.log
                            }
                           } );

 $log->get_level() == XS::Logger::INFO_LOG_LEVEL or ...;

 $log->set_level( XS::Logger::WARN_LOG_LEVEL() ); # only warnings, error and fatal events are logged

LICENSE

...

AUTHOR

Nicolas R atoomic@cpan.org

COPYRIGHT AND LICENSE

This software is copyright (c) 2018 by Nicolas R.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.