Tuesday, June 24, 2014

Error Logging in a File

using System;
using System.Collections.Generic;
using System.Configuration;
using System.IO;
using System.Linq;
using System.Web;

namespace DEParser.Logger
{
    public class FileLogger
    {
        #region Public Functions

        public  void Log(string exception)
        {
            string date = DateTime.Today.ToString("yyyy-MM-dd");
            String FilePath = ConfigurationManager.AppSettings["logPath"] + date + @"-ErorLog.txt";
            bool fileExists = File.Exists(FilePath);
            if (fileExists)
            {
                using (StreamWriter w = File.AppendText(FilePath))
                {
                    MakeLog(exception, w);
                }
            }
            else
            {
                using (StreamWriter w = File.CreateText(FilePath))
                {
                    MakeLog(exception, w);
                }
            }
           
            //using (StreamReader r = File.OpenText(ConfigurationSetting.LOG_FILEPATH))
            //{
            //    DumpLog(r);
            //}
        }

        #endregion

        #region Private Functions

        private void MakeLog(string logMessage, TextWriter w)
        {
            w.Write("\r\nLog Entry : ");
            w.WriteLine("{0} {1}", DateTime.Now.ToLongTimeString(),
                DateTime.Now.ToLongDateString());
            w.WriteLine("  :");
            w.WriteLine("  :{0}", logMessage);
            w.WriteLine("-------------------------------");
        }

        private void DumpLog(StreamReader r)
        {
            string line;
            while ((line = r.ReadLine()) != null)
            {
                Console.WriteLine(line);
            }
        }

        #endregion
    }

}


try
                        {
                           
                        }
                        catch (Exception ex)
                        {
                           
                            new Logger.FileLogger().Log(ex.ToString());
                        }

No comments:

Post a Comment