org.apache.log4j.net

Class SyslogAppender

Implemented Interfaces:
Appender, OptionHandler

public class SyslogAppender
extends AppenderSkeleton

Use SyslogAppender to send log messages to a remote syslog daemon.
Authors:
Ceki Gülcü
Anders Kristensen

Field Summary

protected static int
FACILITY_OI
static int
LOG_AUTH
security/authorization messages
static int
LOG_AUTHPRIV
security/authorization messages (private)
static int
LOG_CRON
clock daemon
static int
LOG_DAEMON
System daemons
static int
LOG_FTP
ftp daemon
static int
LOG_KERN
Kernel messages
static int
LOG_LOCAL0
reserved for local use
static int
LOG_LOCAL1
reserved for local use
static int
LOG_LOCAL2
reserved for local use
static int
LOG_LOCAL3
reserved for local use
static int
LOG_LOCAL4
reserved for local use
static int
LOG_LOCAL5
reserved for local use
static int
LOG_LOCAL6
reserved for local use
static int
LOG_LOCAL7
reserved for local use
static int
LOG_LPR
line printer subsystem
static int
LOG_MAIL
Mail system
static int
LOG_NEWS
network news subsystem
static int
LOG_SYSLOG
messages generated internally by syslogd
static int
LOG_USER
Random user-level messages
static int
LOG_UUCP
UUCP subsystem
protected static int
SYSLOG_HOST_OI

Fields inherited from class org.apache.log4j.AppenderSkeleton

closed, errorHandler, headFilter, layout, name, tailFilter, threshold

Constructor Summary

SyslogAppender()
SyslogAppender(Layout layout, String syslogHost, int syslogFacility)
SyslogAppender(Layout layout, int syslogFacility)

Method Summary

void
activateOptions()
This method returns immediately as options are activated when they are set.
void
append(LoggingEvent event)
void
close()
Release any resources held by this SyslogAppender.
String
getFacility()
Returns the value of the Facility option.
static int
getFacility(String facilityName)
Returns the integer value corresponding to the named syslog facility, or -1 if it couldn't be recognized.
boolean
getFacilityPrinting()
Returns the value of the FacilityPrinting option.
static String
getFacilityString(int syslogFacility)
Returns the specified syslog facility as a lower-case String, e.g.
String
getSyslogHost()
Returns the value of the SyslogHost option.
boolean
requiresLayout()
The SyslogAppender requires a layout.
void
setFacility(String facilityName)
Set the syslog facility.
void
setFacilityPrinting(boolean on)
If the FacilityPrinting option is set to true, the printed message will include the facility name of the application.
void
setSyslogHost(String syslogHost)
The SyslogHost option is the name of the the syslog host where log output should go.

Methods inherited from class org.apache.log4j.AppenderSkeleton

activateOptions, addFilter, append, clearFilters, doAppend, finalize, getErrorHandler, getFilter, getFirstFilter, getLayout, getName, getThreshold, isAsSevereAsThreshold, setErrorHandler, setLayout, setName, setThreshold

Field Details

FACILITY_OI

protected static final int FACILITY_OI
Field Value:
1

LOG_AUTH

public static final int LOG_AUTH
security/authorization messages
Field Value:
32

LOG_AUTHPRIV

public static final int LOG_AUTHPRIV
security/authorization messages (private)
Field Value:
80

LOG_CRON

public static final int LOG_CRON
clock daemon
Field Value:
72

LOG_DAEMON

public static final int LOG_DAEMON
System daemons
Field Value:
24

LOG_FTP

public static final int LOG_FTP
ftp daemon
Field Value:
88

LOG_KERN

public static final int LOG_KERN
Kernel messages
Field Value:
0

LOG_LOCAL0

public static final int LOG_LOCAL0
reserved for local use
Field Value:
128

LOG_LOCAL1

public static final int LOG_LOCAL1
reserved for local use
Field Value:
136

LOG_LOCAL2

public static final int LOG_LOCAL2
reserved for local use
Field Value:
144

LOG_LOCAL3

public static final int LOG_LOCAL3
reserved for local use
Field Value:
152

LOG_LOCAL4

public static final int LOG_LOCAL4
reserved for local use
Field Value:
160

LOG_LOCAL5

public static final int LOG_LOCAL5
reserved for local use
Field Value:
168

LOG_LOCAL6

public static final int LOG_LOCAL6
reserved for local use
Field Value:
176

LOG_LOCAL7

public static final int LOG_LOCAL7
reserved for local use
Field Value:
184

LOG_LPR

public static final int LOG_LPR
line printer subsystem
Field Value:
48

LOG_MAIL

public static final int LOG_MAIL
Mail system
Field Value:
16

LOG_NEWS

public static final int LOG_NEWS
network news subsystem
Field Value:
56

LOG_SYSLOG

public static final int LOG_SYSLOG
messages generated internally by syslogd
Field Value:
40

LOG_USER

public static final int LOG_USER
Random user-level messages
Field Value:
8

LOG_UUCP

public static final int LOG_UUCP
UUCP subsystem
Field Value:
64

SYSLOG_HOST_OI

protected static final int SYSLOG_HOST_OI
Field Value:
0

Constructor Details

SyslogAppender

public SyslogAppender()

SyslogAppender

public SyslogAppender(Layout layout,
                      String syslogHost,
                      int syslogFacility)

SyslogAppender

public SyslogAppender(Layout layout,
                      int syslogFacility)

Method Details

activateOptions

public void activateOptions()
This method returns immediately as options are activated when they are set.
Specified by:
activateOptions in interface OptionHandler
Overrides:
activateOptions in interface AppenderSkeleton

append

public void append(LoggingEvent event)
Overrides:
append in interface AppenderSkeleton

close

public void close()
Release any resources held by this SyslogAppender.
Specified by:
close in interface Appender
Since:
0.8.4

getFacility

public String getFacility()
Returns the value of the Facility option.

getFacility

public static int getFacility(String facilityName)
Returns the integer value corresponding to the named syslog facility, or -1 if it couldn't be recognized.
Parameters:
facilityName - one of the strings KERN, USER, MAIL, DAEMON, AUTH, SYSLOG, LPR, NEWS, UUCP, CRON, AUTHPRIV, FTP, LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7. The matching is case-insensitive.
Since:
1.1

getFacilityPrinting

public boolean getFacilityPrinting()
Returns the value of the FacilityPrinting option.

getFacilityString

public static String getFacilityString(int syslogFacility)
Returns the specified syslog facility as a lower-case String, e.g. "kern", "user", etc.

getSyslogHost

public String getSyslogHost()
Returns the value of the SyslogHost option.

requiresLayout

public boolean requiresLayout()
The SyslogAppender requires a layout. Hence, this method returns true.
Specified by:
requiresLayout in interface Appender
Since:
0.8.4

setFacility

public void setFacility(String facilityName)
Set the syslog facility. This is the Facility option.

The facilityName parameter must be one of the strings KERN, USER, MAIL, DAEMON, AUTH, SYSLOG, LPR, NEWS, UUCP, CRON, AUTHPRIV, FTP, LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7. Case is unimportant.

Since:
0.8.1

setFacilityPrinting

public void setFacilityPrinting(boolean on)
If the FacilityPrinting option is set to true, the printed message will include the facility name of the application. It is false by default.

setSyslogHost

public void setSyslogHost(String syslogHost)
The SyslogHost option is the name of the the syslog host where log output should go. WARNING If the SyslogHost is not set, then this appender will fail.

Copyright 2000-2005 Apache Software Foundation.