Package org.h2.message
Class TraceSystem
- java.lang.Object
-
- org.h2.message.TraceSystem
-
public class TraceSystem extends java.lang.ObjectThe trace mechanism is the logging facility of this database. There is usually one trace system per database. It is called 'trace' because the term 'log' is already used in the database domain and means 'transaction log'. It is possible to write after close was called, but that means for each write the file will be opened and closed again (which is slower).
-
-
Field Summary
Fields Modifier and Type Field Description static intADAPTERThis trace level means all type of messages should be written, but instead of using the trace file the messages should be written to SLF4J.static intDEBUGThis trace level means all type of messages should be written.static intDEFAULT_TRACE_LEVEL_FILEThe default level for file trace messages.static intDEFAULT_TRACE_LEVEL_SYSTEM_OUTThe default level for system out trace messages.static intERRORThis trace level means only errors should be written.static intINFOThis trace level means errors and informational messages should be written.static intOFFThis trace level means nothing should be written.static intPARENTThe parent trace level should be used.
-
Constructor Summary
Constructors Constructor Description TraceSystem(java.lang.String fileName)Create a new trace system object.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Close the writers, and the files if required.intgetLevelFile()TracegetTrace(int moduleId)Get or create a trace object for this module id.TracegetTrace(java.lang.String module)Create a trace object for this module.booleanisEnabled(int level)voidsetFileName(java.lang.String name)Set the trace file name.voidsetLevelFile(int level)Set the file trace level.voidsetLevelSystemOut(int level)Set the trace level to use for System.outvoidsetMaxFileSize(int max)Set the maximum trace file size in bytes.voidsetName(java.lang.String name)voidsetSysOut(java.io.PrintStream out)Set the print stream to use instead of System.out.voidwrite(int level, int moduleId, java.lang.String s, java.lang.Throwable t)voidwrite(int level, java.lang.String module, java.lang.String s, java.lang.Throwable t)
-
-
-
Field Detail
-
PARENT
public static final int PARENT
The parent trace level should be used.- See Also:
- Constant Field Values
-
OFF
public static final int OFF
This trace level means nothing should be written.- See Also:
- Constant Field Values
-
ERROR
public static final int ERROR
This trace level means only errors should be written.- See Also:
- Constant Field Values
-
INFO
public static final int INFO
This trace level means errors and informational messages should be written.- See Also:
- Constant Field Values
-
DEBUG
public static final int DEBUG
This trace level means all type of messages should be written.- See Also:
- Constant Field Values
-
ADAPTER
public static final int ADAPTER
This trace level means all type of messages should be written, but instead of using the trace file the messages should be written to SLF4J.- See Also:
- Constant Field Values
-
DEFAULT_TRACE_LEVEL_SYSTEM_OUT
public static final int DEFAULT_TRACE_LEVEL_SYSTEM_OUT
The default level for system out trace messages.- See Also:
- Constant Field Values
-
DEFAULT_TRACE_LEVEL_FILE
public static final int DEFAULT_TRACE_LEVEL_FILE
The default level for file trace messages.- See Also:
- Constant Field Values
-
-
Method Detail
-
setSysOut
public void setSysOut(java.io.PrintStream out)
Set the print stream to use instead of System.out.- Parameters:
out- the new print stream
-
getTrace
public Trace getTrace(int moduleId)
Get or create a trace object for this module id. Trace modules with id are cached.- Parameters:
moduleId- module id- Returns:
- the trace object
-
getTrace
public Trace getTrace(java.lang.String module)
Create a trace object for this module. Trace modules with names are not cached.- Parameters:
module- the module name- Returns:
- the trace object
-
isEnabled
public boolean isEnabled(int level)
-
setFileName
public void setFileName(java.lang.String name)
Set the trace file name.- Parameters:
name- the file name
-
setMaxFileSize
public void setMaxFileSize(int max)
Set the maximum trace file size in bytes.- Parameters:
max- the maximum size
-
setLevelSystemOut
public void setLevelSystemOut(int level)
Set the trace level to use for System.out- Parameters:
level- the new level
-
setLevelFile
public void setLevelFile(int level)
Set the file trace level.- Parameters:
level- the new level
-
getLevelFile
public int getLevelFile()
-
write
public void write(int level, int moduleId, java.lang.String s, java.lang.Throwable t)
-
write
public void write(int level, java.lang.String module, java.lang.String s, java.lang.Throwable t)
-
close
public void close()
Close the writers, and the files if required. It is still possible to write after closing, however after each write the file is closed again (slowing down tracing).
-
setName
public void setName(java.lang.String name)
-
-