NAME

Net::Server::Log::Sys::Syslog - log via Syslog

SYNOPSIS

use base qw(Net::Server::PreFork);

__PACKAGE__->run(
    log_file => 'Sys::Syslog',
    syslog_ident => 'myapp',
);

DESCRIPTION

This module provides Sys::Syslog logging to the Net::Server system.

CONFIGURATION

log_file

To begin using Sys::Syslog logging, simply set the Net::Server log_file configuration parameter to "Sys::Syslog".

If the magic name "Sys::Syslog" is used, all logging will take place via the Sys::Syslog module. If syslog is used the parameters syslog_logsock, syslog_ident, and syslog_logopt,and syslog_facility may also be defined.

syslog_logsock

Only available if log_file is equal to "Sys::Syslog". May be either unix, inet, native, console, stream, udp, or tcp, or an arrayref of the types to try. Default is "unix" if the version of Sys::Syslog < 0.15 - otherwise the default is to not call setlogsock.

See Sys::Syslog.

syslog_ident

Only available if log_file is equal to "Sys::Syslog". Id to prepend on syslog entries. Default is "net_server". See Sys::Syslog.

syslog_logopt

Only available if log_file is equal to "Sys::Syslog". May be either zero or more of "pid","cons","ndelay","nowait". Default is "pid". See Sys::Syslog.

syslog_facility

Only available if log_file is equal to "Sys::Syslog". See Sys::Syslog and syslog. Default is "daemon".

DEFAULT ARGUMENTS FOR Net::Server

The following arguments are available in the default Net::Server or Net::Server::Single modules. (Other personalities may use additional parameters and may optionally not use parameters from the base class.)

Key               Value                    Default

## syslog parameters (if log_file eq Sys::Syslog)
syslog_logsock    (native|unix|inet|udp
                   |tcp|stream|console)    unix (on Sys::Syslog < 0.15)
syslog_ident      "identity"               "net_server"
syslog_logopt     (cons|ndelay|nowait|pid) pid
syslog_facility   \w+                      daemon

METHODS

initialize

This method is called during the initilize_logging method of Net::Server. It returns a single code ref that will be stored under the log_function property of the Net::Server object. That code ref takes log_level and message as arguments and calls the initialized log4perl system.

handle_log_error

This method is called if the log_function fails for some reason. It is passed the Net::Server object, the error that occurred while logging and an arrayref containing the log level and the message. In turn, this calls the legacy Net::Server::handle_syslog_error method.

LICENCE

Distributed under the same terms as Net::Server