防止从Windows事件日志条目中捕获和处理异常

Prevent catched & handled exception from windows event log entry

提问人:Marek184 提问时间:9/10/2022 更新时间:9/10/2022 访问量:263

问:

在捕获和处理重复的条目异常以继续应用程序工作流时,我想阻止 Windows 事件日志插入异常。

需要明确的是:我不想在我的 asp.net 核心应用程序中关闭异常日志记录全局。我只想阻止对特定代码空间和特定异常类型进行日志记录。

想法?

 bool success = false;
        try
        {
            await dbcontext.AddAsync(order);
            await dbcontext.SaveChangesAsync();
            success = true;
        }
        catch (DbUpdateException ex)
        {
            if (ex.InnerException != null)
            {
                if (ex.InnerException.Message.Contains("Duplicate"))
                {
                    success = false;
                }
            }
        }
        return success;
C# asp.net 异常 Blazor

评论


答:

0赞 Brian Parker 9/10/2022 #1

在标准 Web 应用中,已经有两种不同的“代码空间”日志记录级别设置。如果为代码空间创建自己的日志记录代理,则可以执行相同的操作。

  "Logging": {
    "LogLevel": {
      "Default": "Warning",
      "Microsoft.AspNetCore": "Warning"
    }
  }

由于异常已通过库捕获和记录,因此需要将其日志记录级别设置为“无”,并在更高级别捕获或使用筛选器