在代码中设置 Bugsnag 配置选项
Setting Bugsnag configuration options in code
在 documentation 中它说我可以在代码中执行以下操作以进一步配置我的集成:
Each key provides an in code example and a config file example.
configuration.ReleaseStage = "development";
我想做的是:
public static void Register(HttpConfiguration config)
{
var configuration = Bugsnag.ConfigurationSection.Configuration.Settings;
configuration.ReleaseStage = ConfigurationManager.AppSettings["Environment"];
config.UseBugsnag(configuration);
}
但是,配置属性是只读的(没有设置器)。
另一种方法是将配置添加到 Web.config:
<bugsnag apiKey="your-api-key" releaseStage="development">
问题是我正在从 AppSettings 读取我的环境,因此不能这样做。
是否可以在代码中进行配置,如果可以,怎么做?
更新:自发布问题以来,我在 GitHub 上找到了 issue。
从 GitHub 问题看来,这似乎是不可能的,所以我使用了项目贡献者之一建议的 work around。
The only work around I can suggest right now is to use the core Bugsnag nuget package...
我删除了所有 'old' 代码,卸载了除基本 Bugsnag 之外的所有 NuGet 包,并将以下代码添加到 OnException
覆盖方法中,直到现在我一直在其中记录异常。
var configuration = new Configuration("API_KEY")
{
ReleaseStage = myReleaseStage
};
var client = new Bugsnag.Client(configuration);
client.Notify(new System.Exception("Error!"));
这行得通,错误现在会与发生错误的环境一起记录下来。我的下一步将是重构这项工作,以便 client
在全球范围内可用,但现在这解决了我的 in code 问题。
从 Bugsnag 的最新 Go 文档中,您可以 programmatically set the release stage。在您的示例中,它看起来像这样:
configuration.ReleaseStage = ConfigurationManager.AppSettings["Environment"];
在 documentation 中它说我可以在代码中执行以下操作以进一步配置我的集成:
Each key provides an in code example and a config file example.
configuration.ReleaseStage = "development";
我想做的是:
public static void Register(HttpConfiguration config)
{
var configuration = Bugsnag.ConfigurationSection.Configuration.Settings;
configuration.ReleaseStage = ConfigurationManager.AppSettings["Environment"];
config.UseBugsnag(configuration);
}
但是,配置属性是只读的(没有设置器)。
另一种方法是将配置添加到 Web.config:
<bugsnag apiKey="your-api-key" releaseStage="development">
问题是我正在从 AppSettings 读取我的环境,因此不能这样做。
是否可以在代码中进行配置,如果可以,怎么做?
更新:自发布问题以来,我在 GitHub 上找到了 issue。
从 GitHub 问题看来,这似乎是不可能的,所以我使用了项目贡献者之一建议的 work around。
The only work around I can suggest right now is to use the core Bugsnag nuget package...
我删除了所有 'old' 代码,卸载了除基本 Bugsnag 之外的所有 NuGet 包,并将以下代码添加到 OnException
覆盖方法中,直到现在我一直在其中记录异常。
var configuration = new Configuration("API_KEY")
{
ReleaseStage = myReleaseStage
};
var client = new Bugsnag.Client(configuration);
client.Notify(new System.Exception("Error!"));
这行得通,错误现在会与发生错误的环境一起记录下来。我的下一步将是重构这项工作,以便 client
在全球范围内可用,但现在这解决了我的 in code 问题。
从 Bugsnag 的最新 Go 文档中,您可以 programmatically set the release stage。在您的示例中,它看起来像这样:
configuration.ReleaseStage = ConfigurationManager.AppSettings["Environment"];