Attention: We are retiring the ASP.NET Community Blogs. Learn more >

Catching page level errors and writing them in log file with auto controlled file size

This is preaty handy for catching page errors and writing them down in log file which is automaticaly deleted if he reaches defined file size.

Imports

System.IO

 

Public Shared Sub PageErr(ByVal ErrorMessage As String, ByVal UserIPAddress As String, _

ByVal URLRefferer As String, ByVal PathToLogFile As String, _ByVal FileMaxSize As Integer, ByVal FileName As String)

Dim fileExists As Boolean = My.Computer.FileSystem.FileExists(PathToLogFile & FileName)

If fileExists = False Then

TryMy.Computer.FileSystem.WriteAllText(PathToLogFile & FileName, "File created: " & DateTime.Now.ToString, False)

My.Computer.FileSystem.WriteAllText(PathToLogFile & FileName, _vbCrLf & vbCrLf & "/**************************** " & DateTime.Now.ToString & " ********************************/" & _

vbCrLf &

"Error level: Page level" & _vbCrLf & "Error message: " & ErrorMessage & _

vbCrLf &

"URL refferer: " & URLRefferer & _vbCrLf & "Users' IP: " & UserIPAddress, True)

Catch ex As Exception

End Try

ElseDim fileSize As Long = My.Computer.FileSystem.GetFileInfo(PathToLogFile & FileName).Length()

If fileSize >= FileMaxSize Then

TryMy.Computer.FileSystem.DeleteFile(PathToLogFile & FileName, FileIO.UIOption.OnlyErrorDialogs, FileIO.RecycleOption.DeletePermanently)

My.Computer.FileSystem.WriteAllText(PathToLogFile & FileName, "File created: " & DateTime.Now.ToString, False)My.Computer.FileSystem.WriteAllText(PathToLogFile & FileName, _

vbCrLf & vbCrLf &

"/**************************** " & DateTime.Now.ToString & " ********************************/" & _vbCrLf & "Error level: Page level" & _

vbCrLf &

"Error message: " & ErrorMessage & _vbCrLf & "URL refferer: " & URLRefferer & _

vbCrLf &

"Users' IP: " & UserIPAddress, True)Catch ex As Exception

End Try

ElseMy.Computer.FileSystem.WriteAllText(PathToLogFile & FileName, _

vbCrLf & vbCrLf &

"/**************************** " & DateTime.Now.ToString & " ********************************/" & _vbCrLf & "Error level: Page level" & _

vbCrLf &

"Error message: " & ErrorMessage & _vbCrLf & "URL refferer: " & URLRefferer & _

vbCrLf &

"Users' IP: " & UserIPAddress, True)

End If

End If

End Sub

 

Just pass the aguments and make sure that aspnet user has apropriate read write permissions over the folder where you are going to store the log file

Hope it helps

 

4 Comments

Comments have been disabled for this content.