asp.net core3.1 实战开发(log4数据库日志扩展)

public class CustomEFLogger : ILogger
    {
        private string _CategoryName = null;
        public CustomEFLogger(string categoryName)
        {
            this._CategoryName = categoryName;
        }

        public IDisposable BeginScope<TState>(TState state)
        {
            return null;
        }

        public bool IsEnabled(LogLevel logLevel)
        {
            return true;
        }

        public void Log<TState>(LogLevel logLevel, EventId eventId, TState state, Exception exception, Func<TState, Exception, string> formatter)
        {
            System.Diagnostics.Debug.WriteLine($"************************************************************");
            System.Diagnostics.Debug.WriteLine($"CustomEFLogger {_CategoryName} {logLevel} {eventId} {state} start");

            System.Diagnostics.Debug.WriteLine($"异常信息:{exception?.Message}");
            System.Diagnostics.Debug.WriteLine($"信息:{formatter.Invoke(state, exception)}");

            System.Diagnostics.Debug.WriteLine($"CustomEFLogger {_CategoryName} {logLevel} {eventId} {state} end");
            System.Diagnostics.Debug.WriteLine($"************************************************************");
        }
    }
 public class CustomEFLoggerFactory : ILoggerFactory
    {
        public void AddProvider(ILoggerProvider provider)
        {
            
        }

        public ILogger CreateLogger(string categoryName)
        {
            return new CustomEFLogger(categoryName);
        }

        public void Dispose()
        {
           
        }
    }
发布了143 篇原创文章 · 获赞 117 · 访问量 4224

猜你喜欢

转载自blog.csdn.net/weixin_41181778/article/details/103929277