chore: 首次簽入 Thinkyu ASP.NET 專案
- 加入 Visual Studio / ASP.NET .gitignore - 排除建置輸出、IDE 設定、NuGet packages、大型 MSI 安裝檔
This commit is contained in:
@@ -0,0 +1,63 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
|
||||
namespace BackupService
|
||||
{
|
||||
public class ErrorLogger
|
||||
{
|
||||
private const string Message1 = @"錯誤類別:{0}
|
||||
錯誤來源:{1}
|
||||
錯誤訊息:{2}
|
||||
堆疊內容:
|
||||
{3}
|
||||
|
||||
";
|
||||
|
||||
private const string Message2 = @"以上的錯誤發生的原因是:
|
||||
錯誤類別:{0}
|
||||
錯誤來源:{1}
|
||||
錯誤訊息:{2}
|
||||
堆疊內容:
|
||||
{3}
|
||||
|
||||
";
|
||||
|
||||
private static string logPath = null;
|
||||
|
||||
public static string LogPath
|
||||
{
|
||||
get { return ErrorLogger.logPath; }
|
||||
set { ErrorLogger.logPath = value; }
|
||||
}
|
||||
|
||||
|
||||
public static void WriteException(Exception ex)
|
||||
{
|
||||
// 發生未處理錯誤時執行的程式碼
|
||||
string Message = "";
|
||||
|
||||
Message += String.Format(ErrorLogger.Message1,
|
||||
ex.GetType().FullName,
|
||||
ex.Source,
|
||||
ex.Message,
|
||||
ex.StackTrace);
|
||||
|
||||
ex = ex.InnerException;
|
||||
while (ex != null)
|
||||
{
|
||||
Message += String.Format(ErrorLogger.Message2,
|
||||
ex.GetType().FullName,
|
||||
ex.Source,
|
||||
ex.Message,
|
||||
ex.StackTrace);
|
||||
ex = ex.InnerException;
|
||||
}
|
||||
|
||||
//寫入文字檔
|
||||
string fileName = DateTime.UtcNow.AddHours(8).ToString("yyyyMMdd_HHmmss");
|
||||
System.IO.File.AppendAllText(string.Format(@"{0}/{1}.txt", ErrorLogger.logPath, fileName), Message);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user