A Log sink.
This class represents both a concrete or abstract sink of
Log data. The default implementation logs to System.err, but
other output stream or files may be specified.
Currently this Stream only writes in ISO8859_1 encoding. For
Other encodings use the less efficient WriterLogSink.
If a logFilename is specified, output is sent to that file.
If the filename contains "yyyy_mm_dd", the log file date format
is used to create the actual filename and the log file is rolled
over at local midnight.
If append is set, existing logfiles are appended to, otherwise
a backup is created with a timestamp.
Dated log files are deleted after retain days.
If the property LOG_DATE_FORMAT is set, then it is interpreted
as a format string for java.text.SimpleDateFormat and used to
format the log timestamps. Default value: HH:mm:ss.SSS
If LOG_TIMEZONE is set, it is used to set the timezone of the log date
format, otherwise GMT is used.
_bufferSize
protected int _bufferSize
_flushOn
protected boolean _flushOn
_logLabels
protected boolean _logLabels
_logOneLine
protected boolean _logOneLine
_logStackSize
protected boolean _logStackSize
_logStackTrace
protected boolean _logStackTrace
_logTags
protected boolean _logTags
_logTimeStamps
protected boolean _logTimeStamps
_logTimezone
protected String _logTimezone
_out
protected OutputStream _out
_reopen
protected boolean _reopen
_started
protected boolean _started
_suppressStack
protected boolean _suppressStack
getDatedFilename
public String getDatedFilename()
getFilename
public String getFilename()
getFlushOn
public boolean getFlushOn()
- true, log is flushed on every log.
getLogDateFormat
public String getLogDateFormat()
getLogTimeZone
public String getLogTimeZone()
getLogTimezone
public String getLogTimezone()
Use getLogTimeZone()
getOutputStream
public OutputStream getOutputStream()
getRetainDays
public int getRetainDays()
isAppend
public boolean isAppend()
isLogLabels
public boolean isLogLabels()
isLogOneLine
public boolean isLogOneLine()
isLogStackSize
public boolean isLogStackSize()
isLogStackTrace
public boolean isLogStackTrace()
isLogTags
public boolean isLogTags()
isLogTimeStamps
public boolean isLogTimeStamps()
isSuppressStack
public boolean isSuppressStack()
log
public void log(String formattedLog)
Log a message.
The formatted log string is written to the log sink. The default
implementation writes the message to an outputstream.
- log in interface LogSink
log
public void log(String tag,
Object o,
Frame frame,
long time)
Log a message.
This method formats the log information as a string and calls
log(String). It should only be specialized by a derived
implementation if the format of the logged messages is to be changed.
- log in interface LogSink
tag
- Tag for type of logframe
- The frame that generated the message.time
- The time stamp of the message.
setAppend
public void setAppend(boolean a)
setFilename
public void setFilename(String filename)
setFlushOn
public void setFlushOn(boolean on)
on
- If true, log is flushed on every log.
setLogDateFormat
public void setLogDateFormat(String logDateFormat)
setLogLabels
public void setLogLabels(boolean logLabels)
setLogOneLine
public void setLogOneLine(boolean logOneLine)
setLogStackSize
public void setLogStackSize(boolean logStackSize)
setLogStackTrace
public void setLogStackTrace(boolean logStackTrace)
setLogTags
public void setLogTags(boolean logTags)
setLogTimeStamps
public void setLogTimeStamps(boolean logTimeStamps)
setLogTimeZone
public void setLogTimeZone(String logTimezone)
setLogTimezone
public void setLogTimezone(String logTimezone)
Use setLogTimeZone(String)
setOutputStream
public void setOutputStream(OutputStream out)
setRetainDays
public void setRetainDays(int retainDays)
setSuppressStack
public void setSuppressStack(boolean suppressStack)
start
public void start()
Start a log sink.
The default implementation does nothing
- start in interface LifeCycle
stop
public void stop()
Stop a log sink.
An opportunity for subclasses to clean up. The default
implementation does nothing
- stop in interface LifeCycle