NetSDS::Logger(3) syslog wrapper for applications and classes

SYNOPSIS


use NetSDS::Logger;
my $logger = NetSDS::Logger->new(
name => 'NetSDS-SuperDaemon',
);
$logger->log("info", "Syslog message here");

DESCRIPTION

This module contains implementation of logging functionality for NetSDS components.

By default, messages are logged with "local0" facility and "pid,ndelay,nowait" options.

NOTE: "NetSDS::Logger" module is for internal use mostly from application frameworks like "NetSDS::App", "NetSDS::App::FCGI", etc.

CLASS API

new(%parameters) - constructor
Constructor new() creates new logger object and opens socket with default NetSDS logging parameters.

Arguments allowed (as hash):

name - application name for identification

        Use only ASCII characters in "name" to avoid possible errors.
        Default value is "NetSDS".

facility - logging facility

        Available facility values:
                * local0..local7
                * user
                * daemon
        If not set 'local0' is used as default value
log($level, $message) - write record to log
Wrapper to "syslog()" method of Unix::Syslog module.

Level is passed as string and may be one of the following:

        alert   - LOG_ALERT
        crit    - LOG_CRIT
        debug   - LOG_DEBUG
        emerg   - LOG_EMERG
        error   - LOG_ERR
        info    - LOG_INFO
        notice  - LOG_NOTICE
        warning - LOG_WARNING
DESTROY - class destructor
Destructor (DESTROY method) calls "closelog()" function. That's all.

EXAMPLES

See NetSDS::App for example.

TODO

1. Implement logging via UDP socket.

AUTHOR

Michael Bochkaryov <[email protected]>

LICENSE

Copyright (C) 2008-2009 Net Style Ltd.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

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 General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA