Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Namespace Sitesource.Log
- ''' <summary>
- ''' A very simple logger
- ''' </summary>
- ''' <remarks></remarks>
- Public Class SimpleLogger
- Public Const DefaultOutputFormat As String = "[{0:u}] [{1}] {2}"
- Private _debug As Boolean = False
- Private _logLevel As LogEntryType = LogEntryType.Information
- ''' <summary>
- ''' Raised whenever an entry is written within the given Log Level.
- ''' </summary>
- ''' <param name="level"></param>
- ''' <param name="message"></param>
- ''' <remarks></remarks>
- Public Event EntryWritten(ByVal level As LogEntryType, ByVal message As String)
- ''' <summary>
- ''' New
- ''' </summary>
- ''' <param name="debug">Writes all messages to the trace listeners.</param>
- ''' <param name="logLevel">The lowest loglevel that should raise the EntryWritten event.</param>
- ''' <remarks></remarks>
- Public Sub New(ByVal debug As Boolean, ByVal logLevel As LogEntryType)
- Me._debug = debug
- Me._logLevel = logLevel
- End Sub
- ''' <summary>
- ''' WriteEntry
- ''' </summary>
- ''' <param name="level">Log level.</param>
- ''' <param name="message">A message.</param>
- ''' <remarks></remarks>
- Public Sub WriteEntry(ByVal level As LogEntryType, ByVal message As String)
- If _debug Then System.Diagnostics.Debug.WriteLine(DefaultOutputFormat, Now, level, message)
- If level >= _logLevel Then RaiseEvent EntryWritten(level, message)
- End Sub
- ''' <summary>
- ''' WriteEntry using
- ''' </summary>
- ''' <param name="level">Log level.</param>
- ''' <param name="format">A composite format string.</param>
- ''' <param name="arg0"></param>
- ''' <remarks></remarks>
- Public Sub WriteEntry(ByVal level As LogEntryType, ByVal format As String, ByVal ParamArray arg0() As Object)
- WriteEntry(level, String.Format(format, arg0))
- End Sub
- ''' <summary>
- ''' Indicate whether all messages should be written to the trace listeners.
- ''' </summary>
- ''' <value></value>
- ''' <returns></returns>
- ''' <remarks></remarks>
- Public Property Debug As Boolean
- Set(ByVal value As Boolean)
- _debug = value
- End Set
- Get
- Return _debug
- End Get
- End Property
- ''' <summary>
- ''' The lowest LogLevel that should raise the EntryWritten event.
- ''' </summary>
- ''' <value></value>
- ''' <returns></returns>
- ''' <remarks></remarks>
- Public Property LogLevel As LogEntryType
- Set(ByVal value As LogEntryType)
- _logLevel = value
- End Set
- Get
- Return _logLevel
- End Get
- End Property
- End Class
- End Namespace
Advertisement
Add Comment
Please, Sign In to add comment