#region << 版 本 注 释 >> /*-------------------------------------------------------------------- * 版权所有 (c) 2025 WenJY 保留所有权利。 * CLR版本:4.0.30319.42000 * 机器名称:Mr.Wen's MacBook Pro * 命名空间:Sln.Iot.Serilog * 唯一标识:15731D3E-0D48-41B6-B77B-A4CC592B4939 * * 创建者:WenJY * 电子邮箱: * 创建时间:2025-04-11 11:09:14 * 版本:V1.0.0 * 描述: * *-------------------------------------------------------------------- * 修改人: * 时间: * 修改说明: * * 版本:V1.0.0 *--------------------------------------------------------------------*/ #endregion << 版 本 注 释 >> using System; using Serilog; namespace Sln.Iot.Serilog { public class SerilogHelper { private readonly ILogger? Info_logger = Log.ForContext("Module", "Info"); private readonly ILogger? Iot_logger = Log.ForContext("Module", "Iot"); private readonly ILogger? Error_logger = Log.ForContext("Module", "Error"); private readonly ILogger? Alarm_logger = Log.ForContext("Module", "Alarm"); /// /// Info日志 /// /// public void Info(string msg) { if (Info_logger != null) { this.Info_logger.Information(msg); } } /// /// Iot日志 /// /// public void Iot(string msg) { if (Iot_logger != null) { this.Iot_logger.Information(msg); } } /// /// 设备告警日志 /// /// public void Alarm(string msg) { if (Alarm_logger != null) { this.Alarm_logger.Information(msg); } } /// /// Error日志 /// /// /// public void Error(string msg, Exception ex = null) { if (!string.IsNullOrEmpty(msg) && ex == null) { this.Error_logger.Information("【附加信息】 : {0}
", new object[] { msg }); } else if (!string.IsNullOrEmpty(msg) && ex != null) { string errorMsg = BeautyErrorMsg(ex); this.Error_logger.Information("【附加信息】 : {0}
{1}", new object[] { msg, errorMsg }); } else if (string.IsNullOrEmpty(msg) && ex != null) { string errorMsg = BeautyErrorMsg(ex); this.Error_logger.Information(errorMsg); } } private string BeautyErrorMsg(Exception ex) { string errorMsg = string.Format("【异常类型】:{0}
【异常信息】:{1}
【堆栈调用】:{2}", new object[] { ex.GetType().Name, ex.Message, ex.StackTrace }); errorMsg = errorMsg.Replace("\r\n", "
"); errorMsg = errorMsg.Replace("位置", "位置"); return errorMsg; } } }