using Grpc.Extension.Abstract.Model; using System; namespace Grpc.Extension.Abstract { /// /// 日志访问 /// public class LoggerAccessor { /// /// LoggerError /// /// /// public delegate void LoggerErrorAction(Exception ex, LogType logType = LogType.ServerLog); /// /// LoggerMonitor /// /// /// public delegate void LoggerMonitorAction(string msg, LogType logType = LogType.ServerLog); private static Lazy instance = new Lazy(() => new LoggerAccessor(), true); /// /// Instance /// public static LoggerAccessor Instance { get { return instance.Value; } } private LoggerAccessor() { } /// /// 写异常日志 /// public event LoggerErrorAction LoggerError; /// /// 触发写异常日志 /// /// /// public void OnLoggerError(Exception ex, LogType logType = LogType.ServerLog) { LoggerError?.Invoke(ex, logType); } /// /// 写监控日志 /// public event LoggerMonitorAction LoggerMonitor; /// /// 触发写监控日志 /// /// /// public void OnLoggerMonitor(string msg, LogType logType = LogType.ServerLog) { LoggerMonitor?.Invoke(msg, logType); } } }