App_Code.Extensions.Logger.OnLog C# (CSharp) Method

OnLog() private static method

The event handler that is triggered every time there is a log notification.
private static OnLog ( object sender, EventArgs e ) : void
sender object /// The sender. ///
e System.EventArgs /// The event arguments. ///
return void
        private static void OnLog(object sender, EventArgs e)
        {
            if (sender == null || !(sender is string))
                return;

            if (!ExtensionManager.ExtensionEnabled("Logger"))
                return;

            var logMsg = (string)sender;

            if (string.IsNullOrEmpty(logMsg))
                return;

            var file = Filename;

            lock (SyncRoot)
            {
                try
                {
                    FileInfo fi = new FileInfo(file);

                    // 1048576 is the number of bytes in a megabyte.
                    if (fi != null && fi.Exists && fi.Length > (1048576 * MaxLogSizeMb))
                    {
                        fi.Delete();
                    }

                    using (var fs = new FileStream(file, FileMode.Append))
                    using (var sw = new StreamWriter(fs))
                    {
                        sw.WriteLine(@"*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*");
                        sw.WriteLine("Date: {0}", DateTime.Now);
                        sw.WriteLine(logMsg);
                    }
                }
                catch
                {
                    // Absorb the error.
                }
            }
        }