NAME

NetSDS::Logger - 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.

SEE ALSO

Sys::Syslog

TODO

1. Implement logging via UDP socket.

AUTHOR

Michael Bochkaryov <misha@rattler.kiev.ua>

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