| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 | using System;using System.Collections.Generic;using System.Linq;using System.Text;using log4net.Core;using System.Reflection;namespace Aitex.Core.RT.Log{    class LogWriter    {        private readonly static Type ThisDeclaringType = typeof(LogWriter);        private readonly ILogger defaultLogger;        public LogWriter()        {            defaultLogger = log4net.Core.LoggerManager.GetLogger(Assembly.GetExecutingAssembly(), "CommonLogger");        }        string FormatLogString(LogItem logItem)        {            string fileName = string.Empty;            string result = logItem.msg;            try            {                //fileName = logItem.sf.GetFileName().Substring(logItem.sf.GetFileName().LastIndexOf('\\') + 1);                //2014-10-17 17:53:51.9   INFO   Log.cs   Line:50 - Config模块初始化成功.                var temp = logItem.sf.GetFileName();                if (temp != null)                {                    fileName = temp.Substring(temp.LastIndexOf('\\') + 1);                }            }            catch (Exception)            {                fileName = string.Empty;            }            try            {                //result = string.Format("{0} LOG.{1} {2} Line:{3} {4}() - {5}", logItem.dt.ToString("yyyy/MM/dd HH:mm:ss.fff"),                //                                    logItem.lv.Name,                //                                    fileName,                //                                    logItem.sf.GetFileLineNumber().ToString(),                //                                    logItem.sf.GetMethod().Name,                //                                    logItem.msg);                //result = string.Format("{0}\t{1}\t{2}\t{3}", logItem.dt.ToString("yyyy/MM/dd HH:mm:ss.fff"),                //    logItem.lv.Name,                //    logItem.StackFile,                //    logItem.msg);                result = string.Format("{0}\t{1}\t{2} ", logItem.dt.ToString("yyyy/MM/dd HH:mm:ss.fff"),                    logItem.lv.Name,                                         logItem.msg);            }            catch (Exception)            {            }            return result;        }        public string Write(LogItem logItem)        {            string log = FormatLogString(logItem);            if (defaultLogger.IsEnabledFor(logItem.lv))            {                defaultLogger.Log(typeof(LogWriter), logItem.lv, log, logItem.ex);            }            return log;        }    }}
 |