org.apache.log4j.net
Class SyslogAppender

java.lang.Object
  extended by org.apache.log4j.AppenderSkeleton
      extended by org.apache.log4j.net.SyslogAppender
All Implemented Interfaces:
Appender, OptionHandler

public class SyslogAppender
extends AppenderSkeleton

Use SyslogAppender to send log messages to a remote syslog daemon.

Author:
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, int syslogFacility)
           
SyslogAppender(Layout layout, String syslogHost, int syslogFacility)
           
 
Method Summary
 void activateOptions()
          This method returns immediately as options are activated when they are set.
 void append(LoggingEvent event)
          Subclasses of AppenderSkeleton should implement this method to perform actual logging.
 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.
 boolean getHeader()
          If true, the appender will generate the HEADER part (that is, timestamp and host name) of the syslog packet.
 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 setHeader(boolean val)
          Returns whether the appender produces the HEADER part (that is, timestamp and host name) of the syslog packet.
 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
addFilter, clearFilters, doAppend, finalize, getErrorHandler, getFilter, getFirstFilter, getLayout, getName, getThreshold, isAsSevereAsThreshold, setErrorHandler, setLayout, setName, setThreshold
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOG_KERN

public static final int LOG_KERN
Kernel messages

See Also:
Constant Field Values

LOG_USER

public static final int LOG_USER
Random user-level messages

See Also:
Constant Field Values

LOG_MAIL

public static final int LOG_MAIL
Mail system

See Also:
Constant Field Values

LOG_DAEMON

public static final int LOG_DAEMON
System daemons

See Also:
Constant Field Values

LOG_AUTH

public static final int LOG_AUTH
security/authorization messages

See Also:
Constant Field Values

LOG_SYSLOG

public static final int LOG_SYSLOG
messages generated internally by syslogd

See Also:
Constant Field Values

LOG_LPR

public static final int LOG_LPR
line printer subsystem

See Also:
Constant Field Values

LOG_NEWS

public static final int LOG_NEWS
network news subsystem

See Also:
Constant Field Values

LOG_UUCP

public static final int LOG_UUCP
UUCP subsystem

See Also:
Constant Field Values

LOG_CRON

public static final int LOG_CRON
clock daemon

See Also:
Constant Field Values

LOG_AUTHPRIV

public static final int LOG_AUTHPRIV
security/authorization messages (private)

See Also:
Constant Field Values

LOG_FTP

public static final int LOG_FTP
ftp daemon

See Also:
Constant Field Values

LOG_LOCAL0

public static final int LOG_LOCAL0
reserved for local use

See Also:
Constant Field Values

LOG_LOCAL1

public static final int LOG_LOCAL1
reserved for local use

See Also:
Constant Field Values

LOG_LOCAL2

public static final int LOG_LOCAL2
reserved for local use

See Also:
Constant Field Values

LOG_LOCAL3

public static final int LOG_LOCAL3
reserved for local use

See Also:
Constant Field Values

LOG_LOCAL4

public static final int LOG_LOCAL4
reserved for local use

See Also:
Constant Field Values

LOG_LOCAL5

public static final int LOG_LOCAL5
reserved for local use

See Also:
Constant Field Values

LOG_LOCAL6

public static final int LOG_LOCAL6
reserved for local use

See Also:
Constant Field Values

LOG_LOCAL7

public static final int LOG_LOCAL7
reserved for local use

See Also:
Constant Field Values

SYSLOG_HOST_OI

protected static final int SYSLOG_HOST_OI
See Also:
Constant Field Values

FACILITY_OI

protected static final int FACILITY_OI
See Also:
Constant Field Values
Constructor Detail

SyslogAppender

public SyslogAppender()

SyslogAppender

public SyslogAppender(Layout layout,
                      int syslogFacility)

SyslogAppender

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

close

public void close()
Release any resources held by this SyslogAppender.

Since:
0.8.4

getFacilityString

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


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

append

public void append(LoggingEvent event)
Description copied from class: AppenderSkeleton
Subclasses of AppenderSkeleton should implement this method to perform actual logging. See also AppenderSkeleton.doAppend method.

Specified by:
append in class AppenderSkeleton

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 class AppenderSkeleton

requiresLayout

public boolean requiresLayout()
The SyslogAppender requires a layout. Hence, this method returns true.

Since:
0.8.4

setSyslogHost

public void setSyslogHost(String syslogHost)
The SyslogHost option is the name of the the syslog host where log output should go. A non-default port can be specified by appending a colon and port number to a host name, an IPv4 address or an IPv6 address enclosed in square brackets. WARNING If the SyslogHost is not set, then this appender will fail.


getSyslogHost

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


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

getFacility

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


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.


getFacilityPrinting

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


getHeader

public final boolean getHeader()
If true, the appender will generate the HEADER part (that is, timestamp and host name) of the syslog packet. Default value is false for compatibility with existing behavior, however should be true unless there is a specific justification.

Since:
1.2.15

setHeader

public final void setHeader(boolean val)
Returns whether the appender produces the HEADER part (that is, timestamp and host name) of the syslog packet.

Since:
1.2.15


Copyright © 1999-2010 Apache Software Foundation. All Rights Reserved.