Dies ist meine Methode, die ich verwende, um die Ausnahmen einer Anwendung zu protokollieren. Es funktioniert nicht in Visual Studio, funktioniert aber gut in IIS. Wenn ich die Formate "PresentMonth" und "Filename" ändere, funktioniert es in VS, aber nicht in IIS. Ich weiss nicht, was falsch ist.Kann Ausnahmen nicht protokollieren
public static void WriteLog(string sExceptionName)
{
try
{
StreamWriter log;
//String Filepath = "C:\\Quasar_Logs\\";
String Filepath = ConfigurationManager.AppSettings["FilePath"].ToString();
String PresentMonth = DateTime.Now.ToString("-MMM-yy");
String Filename = "Quasar_Log"+ PresentMonth +".txt";
if (!File.Exists(Filepath + Filename))
{
log = new StreamWriter(Filepath + Filename);
}
else
{
log = File.AppendText(Filepath + Filename);
}
log.WriteLine("Data Time:" + DateTime.Now +"\n\n");
//log.WriteLine("Exception Name:" + sExceptionName);
log.WriteLine(sExceptionName);
//log.WriteLine("Error Line No.:" + nErrorLineNo);
log.Close();
}
catch (Exception ex)
{
HttpContext.Current.Response.Redirect("../Access/UnabletoLog.htm");
WriteLog("Line Number: " + ex.ToString());
}
}
Sein wahrscheinliches Ein Berechtigungsproblem in dem Sie versuchen zu schreiben. – BugFinder
@BugFinder Früher habe ich in 'C' Laufwerk erstellt und jetzt habe ich es in 'E' Laufwerk geändert, es hat funktioniert. Aber mein Zweifel ist, wenn ich die Datei in Laufwerk C habe, funktionierte es in IIS aber nicht in VS und umgekehrt, wenn ich die Formate ändere. –
weil in VS es als Sie läuft, in IIS läuft es auf etwas anderes Id rate .. Sie sollten in der Lage sein, Berechtigungen zu erteilen – BugFinder