log4net使用C#代码配置文件名,记录日志

最近在公司一直写webservice   然后用log4net 来记录请求的记录以及数据的结果,然后突然发现请求的频率太多,就想找一个地方自己专门记录的东西.

因为不想在webconfig里边配置 所以 就想到了用 C#代码 来配置log4net


   public class Program
    {
        private static void Main()
        {
            string currentPath = AppDomain.CurrentDomain.BaseDirectory;
            string txtLogPath = string.Empty;
            string iisBinPath = AppDomain.CurrentDomain.RelativeSearchPath;
            if (!string.IsNullOrEmpty(iisBinPath))
                txtLogPath = Path.Combine(iisBinPath, "ErrorLog.txt");
            else
                txtLogPath = Path.Combine(currentPath, "ErrorLog.txt");
            FileAppender fileAppender = new FileAppender();
            fileAppender.Name = "LogFileAppender";
            fileAppender.File = txtLogPath;
            fileAppender.AppendToFile = true;
            PatternLayout patternLayout = new PatternLayout();
            patternLayout.ConversionPattern = "记录时间:%date \r\n线程ID:[%thread] \r\n日志级别:%-5level \r\n出错类:%logger property:[%property{NDC}]\r\n错误描述:%message%\r\n";
            patternLayout.Footer = "------------------------add by 夜色、花清浅--------------------";
            patternLayout.ActivateOptions();
            fileAppender.Layout = patternLayout;
            //UTF8编码,确保中文不乱码。
            fileAppender.Encoding = Encoding.UTF8;
            fileAppender.ActivateOptions();
            BasicConfigurator.Configure(fileAppender);
            InvokeErrorLog(MethodBase.GetCurrentMethod().DeclaringType, "112312312323", new Exception());
        }
        public static void InvokeErrorLog(Type methedType, string errorMsg, Exception ex)
        {
            ILog log = log4net.LogManager.GetLogger(methedType);
            log.Info(errorMsg, ex);
        }
    }

 控制台程序可直接运行

效果如下

log4net使用C#代码配置文件名,记录日志

 

第一是记录

第二是分享

本文抄自 http://www.cnblogs.com/ryanding/archive/2011/05/10/2040561.html 

做了一些简化,没有什么目的  只是相对于webconfig的配置来说  更喜欢用C#代码。





 

log4net使用C#代码配置文件名,记录日志

上一篇:安装win8 server core 核心安装


下一篇:Delphi 控制台程序