• 一个不需要Log4Net的写日志的简单方法


    有些项目写日志时会选择大名鼎鼎的Log4Net。而在我们使用它时,总会出现一些诸如版本不匹配而造成的写日志失败的情况,还要改web.config,还要改AssemblyInfo。而且,它的失败,并不是以日志的形式展现,而是“无反应”,你无法知道是哪里出了问题,最终的效果就是“没有输出日志且不知道为什么,需要根据百度和经验判断”。索性放弃。我只是要输出文本日志而已,杀鸡不要用牛刀了。

    以下是一个简单实用的日志类,无需配置。

     public class LogHelper
        {
    
            public static void WriteLog(string msg)
            {
                string logFileName = DateTime.Now.ToString("yyyyMMdd") + ".txt";
    
    
                //此处根据不同的项目类型用不同的方法取路径
                //string logPath = base.Context.Server.MapPath("") + @"LOG";
                //string logPath = HttpContext.Current.Server.MapPath("") + @"LOG";
                string logPath = AppDomain.CurrentDomain.BaseDirectory + @"log";
                string fullPath = logPath + @"" + logFileName;
                
                if (!Directory.Exists(logPath))
                {
                    Directory.CreateDirectory(logPath);
                }
                using (StreamWriter writer = File.AppendText(fullPath))
                {
                    Log(msg, writer);
                    writer.Close();
                }
            }
            private static void Log(string logMessage, TextWriter writer)
            {
                writer.Write("
    Log Entry : ");
                writer.WriteLine("{0} {1}", DateTime.Now.ToLongTimeString(), DateTime.Now.ToLongDateString());
                writer.WriteLine("  :{0}", logMessage);
                writer.WriteLine("-------------------------------");
                writer.Flush();
            }
        }
  • 相关阅读:
    springmvc与Ajax交互
    springmvc请求参数获取的几种方法
    struts2进阶篇(2)
    mysql explain用法
    struts2基础篇(1)
    struts2工作原理
    PHP 数组的拷贝是按值传递 or 按引用传递
    js中使用cookie
    Yii rules常用规则
    js倒计时发送验证码按钮
  • 原文地址:https://www.cnblogs.com/Sabre/p/7364619.html
Copyright © 2020-2023  润新知