NIST-SIP: The Reference Implementation for JAIN-SIP 1.2

gov.nist.javax.sip.stack
Class ServerLog

java.lang.Object
  extended by gov.nist.javax.sip.stack.ServerLog
All Implemented Interfaces:
gov.nist.core.LogLevels, gov.nist.core.ServerLogger

public class ServerLog
extends Object
implements gov.nist.core.ServerLogger

Log file wrapper class. Log messages into the message trace file and also write the log into the debug file if needed. This class keeps an XML formatted trace around for later access via RMI. The trace can be viewed with a trace viewer (see tools.traceviewerapp).

Version:
1.2 $Revision: 1.37 $ $Date: 2009/07/29 20:38:13 $
Author:
M. Ranganathan

Field Summary
 
Fields inherited from interface gov.nist.core.LogLevels
TRACE_DEBUG, TRACE_ERROR, TRACE_EXCEPTION, TRACE_FATAL, TRACE_INFO, TRACE_MESSAGES, TRACE_NONE, TRACE_TRACE, TRACE_WARN
 
Constructor Summary
ServerLog(SIPTransactionStack sipStack, Properties configurationProperties)
           
 
Method Summary
 void checkLogFile()
           
 void closeLogFile()
           
 String getLogFileName()
          return the name of the log file.
 int getTraceLevel()
          Get the trace level for the stack.
 void logException(Exception ex)
          Log an exception stack trace.
 void logMessage(SIPMessage message, String from, String to, boolean sender, long time)
          Log a message into the log directory.
 void logMessage(SIPMessage message, String from, String to, String status, boolean sender)
          Log a message into the log directory.
 void logMessage(SIPMessage message, String from, String to, String status, boolean sender, long time)
          Log a message into the log directory.
 boolean needsLogging()
          Global check for whether to log or not.
 void setAuxInfo(String auxInfo)
          Set aux information.
 void setLogFileName(String name)
          Set the log file name
 void setSipStack(SipStack sipStack)
           
 void setStackIpAddress(String ipAddress)
           
 void setStackProperties(Properties stackProperties)
           
 void setTraceLevel(int level)
          Set the trace level for the stack.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ServerLog

public ServerLog(SIPTransactionStack sipStack,
                 Properties configurationProperties)
Method Detail

setStackIpAddress

public void setStackIpAddress(String ipAddress)

closeLogFile

public void closeLogFile()
Specified by:
closeLogFile in interface gov.nist.core.ServerLogger

checkLogFile

public void checkLogFile()

needsLogging

public boolean needsLogging()
Global check for whether to log or not. To minimize the time return false here.

Returns:
true -- if logging is globally enabled and false otherwise.

setLogFileName

public void setLogFileName(String name)
Set the log file name

Parameters:
name - is the name of the log file to set.

getLogFileName

public String getLogFileName()
return the name of the log file.


logMessage

public void logMessage(SIPMessage message,
                       String from,
                       String to,
                       boolean sender,
                       long time)
Log a message into the log directory.

Specified by:
logMessage in interface gov.nist.core.ServerLogger
Parameters:
message - a SIPMessage to log
from - from header of the message to log into the log directory
to - to header of the message to log into the log directory
sender - is the server the sender
time - is the time to associate with the message.

logMessage

public void logMessage(SIPMessage message,
                       String from,
                       String to,
                       String status,
                       boolean sender,
                       long time)
Log a message into the log directory.

Specified by:
logMessage in interface gov.nist.core.ServerLogger
Parameters:
message - a SIPMessage to log
from - from header of the message to log into the log directory
to - to header of the message to log into the log directory
status - the status to log.
sender - is the server the sender or receiver (true if sender).
time - is the reception time.

logMessage

public void logMessage(SIPMessage message,
                       String from,
                       String to,
                       String status,
                       boolean sender)
Log a message into the log directory. Time stamp associated with the message is the current time.

Specified by:
logMessage in interface gov.nist.core.ServerLogger
Parameters:
message - a SIPMessage to log
from - from header of the message to log into the log directory
to - to header of the message to log into the log directory
status - the status to log.
sender - is the server the sender or receiver (true if sender).

logException

public void logException(Exception ex)
Log an exception stack trace.

Specified by:
logException in interface gov.nist.core.ServerLogger
Parameters:
ex - Exception to log into the log file

setTraceLevel

public void setTraceLevel(int level)
Set the trace level for the stack.

Parameters:
level - -- the trace level to set. The following trace levels are supported:
  • 0 -- no tracing
  • 16 -- trace messages only
  • 32 Full tracing including debug messages.

getTraceLevel

public int getTraceLevel()
Get the trace level for the stack.

Returns:
the trace level

setAuxInfo

public void setAuxInfo(String auxInfo)
Set aux information. Auxiliary information may be associated with the log file. This is useful for remote logs.

Parameters:
auxInfo - -- auxiliary information.

setSipStack

public void setSipStack(SipStack sipStack)
Specified by:
setSipStack in interface gov.nist.core.ServerLogger

setStackProperties

public void setStackProperties(Properties stackProperties)
Specified by:
setStackProperties in interface gov.nist.core.ServerLogger

NIST-SIP: The Reference Implementation for JAIN-SIP 1.2

A product of the NIST/ITL Advanced Networking Technologies Division.
See conditions of use.
Submit a bug report or feature request.