gpt4 book ai didi

c# - 防止将特定异常记录到 App Insights

转载 作者:行者123 更新时间:2023-12-03 00:36:27 25 4
gpt4 key购买 nike

这个可能性不大,Google 上似乎没有任何接近的内容,但我想知道是否可以防止某些异常被记录到 App Insights 中?

我们的代码库中有很多地方针对用户操作引发了异常,但这些异常并不是我们想要在 App Insights 中显示的真正异常。

但是,更改发生这种情况的所有区域将需要很长时间,并且需要大量测试,因为我们需要确保逻辑流程不会改变

目前我们引发了 LocationDomainException 类型的异常,我想如果我遇到不想记录异常的地方,我们可以更改为 LocationDomainUserError

我需要停止记录此异常或从其继承的任何异常

我正在使用 .NET Core 3.1。

我知道这有点反模式,但是有人尝试过吗?

最佳答案

是的,您可以使用 Telemetry Processor :

public class CustomTelemetryFilter : ITelemetryProcessor
{
private readonly ITelemetryProcessor _next;

public CustomTelemetryFilter(ITelemetryProcessor next)
{
_next = next;
}

public void Process(ITelemetry item)
{
// Example: process all exceptions except LocationDomainException
var isSomeException = item is ExceptionTelemetry ex && ex.Exception is LocationDomainException;

if (!isSomeException)
_next.Process(item); // Process the item
else
{
// Item is dropped here
}
}
}

使用 services.AddApplicationInsightsTelemetryProcessor<CustomTelemetryFilter>(); 注册处理器

关于c# - 防止将特定异常记录到 App Insights,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65568843/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com