是否可以将 Raygun 设置为报告 Azure 工作者角色中所有未捕获的异常?

Can Raygun be set up to report all uncaught exceptions in an Azure worker role?

可以使用 Raygun 报告 Azure 工作者角色中未捕获的异常吗?或者是否必须手动将捕获的异常发送到 Raygun?我已将以下行添加到我的 app.config

<configSections>
    <section name="RaygunSettings" type="Mindscape.Raygun4Net.RaygunSettings, Mindscape.Raygun4Net" />
</configSections>
<RaygunSettings apikey="my_key" />

我还在 WorkerRole.cs 中添加了以下内容:

public class WorkerRole : RoleEntryPoint, IRaygunApplication
{
    private static readonly RaygunClient _raygunClient = new RaygunClient();

    public RaygunClient GenerateRaygunClient()
    {
        return _raygunClient;
    }
}

我只需要按照说明进行操作即可 here

工作者角色的完整设置是:

将您的 api 密钥添加到服务配置中

<ConfigurationSettings>
    <Setting name="Raygun.ApiKey" value="my_key" />
</ConfigurationSettings>

安装 RayGun4Net Nuget 包:https://www.nuget.org/packages/Mindscape.Raygun4Net/

在您的app.config

中添加一个部分
configSections>
    <section name="RaygunSettings" type="Mindscape.Raygun4Net.RaygunSettings, Mindscape.Raygun4Net" />
</configSections>

更新WorkerRole.cs

public override bool OnStart()
    {
        AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
        return base.OnStart();
    }

void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
    {
        var raygunClient = new RaygunClient(ConfigHelpers.GetAppSetting("Raygun.ApiKey"));

        raygunClient.Send((Exception)e.ExceptionObject);
    }