public static void LogInfoToTextFile(string message)
{
bool CreateLog = false;
if (ConfigurationManager.AppSettings["CreateLog"] != null)
{
CreateLog = Convert.ToBoolean(ConfigurationManager.AppSettings["CreateLog"]); //"CreateLog";
}
if (CreateLog)
{
string servicesPath = System.AppDomain.CurrentDomain.BaseDirectory + "/Log";
servicesPath += "/LogFile";
if (!Directory.Exists(servicesPath))
{
Directory.CreateDirectory(servicesPath);
}
var files = new DirectoryInfo(servicesPath).GetFiles("*.txt");
foreach (var file in files)
{
if (DateTime.UtcNow - file.CreationTimeUtc > TimeSpan.FromDays(10))
{
File.Delete(file.FullName);
}
}
string filepath = servicesPath + "/";
string fileName = DateTime.Now.Year + DateTime.Now.Month.ToString() + DateTime.Now.Day;
fileName = filepath + fileName + ".txt";
StreamWriter objwriter = new StreamWriter(fileName, true);
objwriter.Write(Environment.NewLine + "" + message);
objwriter.Close();
}
}
public static void LogInfoToTextFile_New(string message)
{
//Komal14486 : 10/11/2019 - Adding log to check the flow
bool CreateLog = true;
if (ConfigurationManager.AppSettings["CreateLog"] != null)
{
CreateLog = Convert.ToBoolean(ConfigurationManager.AppSettings["CreateLog"]); //"CreateLog";
}
if (CreateLog)
{
string servicesPath = System.AppDomain.CurrentDomain.BaseDirectory + "/Log_New";
servicesPath += "/LogFile";
if (!Directory.Exists(servicesPath))
{
Directory.CreateDirectory(servicesPath);
}
var files = new DirectoryInfo(servicesPath).GetFiles("*.txt");
foreach (var file in files)
{
if (DateTime.UtcNow - file.CreationTimeUtc > TimeSpan.FromDays(10))
{
File.Delete(file.FullName);
}
}
string filepath = servicesPath + "/";
string fileName = DateTime.Now.Year + DateTime.Now.Month.ToString() + DateTime.Now.Day;
fileName = filepath + fileName + ".txt";
using (StreamWriter objwriter = new StreamWriter(fileName, true))
{
objwriter.Write(Environment.NewLine + "" + message);
objwriter.Close();
};
}
}
========================================
Call it in Catch
catch (Exception ex)
{
PageUtils.LogInfoToTextFile(string.Format("While fetching data in the method LoadZoneList() in the page CMSReport.aspx.cs:{0} - {1} ", ex.Message, DateTime.Now));
//PageUtils.LogInfoToTextFile(ex.Message);
//ProcessException(ex);
}
==========================================
Using elmah
public void ProcessException(Exception ex)
{
Elmah.ErrorSignal.FromCurrentContext().Raise(ex);
var errorMessage = new StringBuilder();
errorMessage.Append(Environment.NewLine + "DateTime : " + DateTime.Now + Environment.NewLine);
//errorMessage.Append("User : " + userId + Environment.NewLine);
//errorMessage.Append("Class Name : " + className + Environment.NewLine);
//errorMessage.Append("Method Name : " + methodName + Environment.NewLine);
errorMessage.Append("Error Message : " + ex.Message + Environment.NewLine);
errorMessage.Append("Stack Trace : " + ex.StackTrace + Environment.NewLine);
errorMessage.Append("Inner Exception : " + ex.InnerException + Environment.NewLine);
Logger.Write(errorMessage.ToString());
SetErrorMesssage(ex.Message.ToString());
LoggingDTO loggingDTO = new LoggingDTO();
var objUserInfo = new UserInfo();
if (HttpContext.Current.Session[Constants.UserInformation] != null)
{
objUserInfo = (UserInfo)HttpContext.Current.Session[Constants.UserInformation];
loggingDTO.UserId = objUserInfo.UserId;
loggingDTO.RoleId = objUserInfo.RoleMasterId;
loggingDTO.OfficeId = objUserInfo.OfficeId;
loggingDTO.IpAddress = System.Web.HttpContext.Current.Request.UserHostAddress == null ? "" : System.Web.HttpContext.Current.Request.UserHostAddress.ToString();
}
loggingDTO.LoggingType = 2;
loggingDTO.ControlId = Convert.ToString(ex.Message);
loggingDTO.PageName = Convert.ToString(ex.StackTrace);
loggingDTO.ControlName = Convert.ToString(ex.InnerException);
loggingDTO.CreatedDate = DateTime.Now;
using (var client = ServiceClient<IMasterManager>.Create(ObjectConstants.MasterManager))
{
client.Instance.SaveLogging(loggingDTO);
}
//HttpContext.Current.Response.Redirect("/ErrorPage.aspx");
// Navigate to the error page
}
=====================================
catch (Exception ex)
{
ProcessException(ex);
}
No comments:
Post a Comment