C# applicationinsightConfig是否会导致应用程序回收
我正在使用application insight SDK记录异常。我正在ApplicationSightConfig文件中设置排除/包含事件类型列表 我的问题是,如果我在运行时将applicationinsightconfig文件更改为更新排除列表事件列表,它是否会回收应用程序域 我的问题是,如果我在运行时将applicationinsightconfig文件更改为更新排除列表事件列表,它是否会回收应用程序域 根据我的测试,如果将applicationinsightconfig更改为applicationinsightconfig文件中的排除/包含事件类型列表。它不会影响您的web应用程序 web应用程序仍然可以正常工作 该类将获取要运行的参数(您在.config中设置的)C# applicationinsightConfig是否会导致应用程序回收,c#,azure,asp.net-web-api,azure-application-insights,C#,Azure,Asp.net Web Api,Azure Application Insights,我正在使用application insight SDK记录异常。我正在ApplicationSightConfig文件中设置排除/包含事件类型列表 我的问题是,如果我在运行时将applicationinsightconfig文件更改为更新排除列表事件列表,它是否会回收应用程序域 我的问题是,如果我在运行时将applicationinsightconfig文件更改为更新排除列表事件列表,它是否会回收应用程序域 根据我的测试,如果将applicationinsightconfig更改为applic
更新:
根据我的测试,我发现如果您更改了applicationinsightconfig文件中的设置,它将在web应用程序重新启动之前无效 根据这一点,我创建了一个自定义处理器来过滤遥测数据并将其注册到SDK中。所有遥测都要经过处理器,您可以选择将其从流中删除,或添加属性 SuccessfulDependencyFilter的某些部分:
public class SuccessfulDependencyFilter : ITelemetryProcessor
{
private ITelemetryProcessor Next { get; set; }
// You can pass values from .config
public string MyParamFromConfigFile { get; set; }
// Example: replace with your own modifiers.
private void ModifyItem (ITelemetry item)
{
item.Context.Properties.Add("app-version", "1." + MyParamFromConfigFile);
}
applicationinsightconfig文件将添加以下设置
<TelemetryProcessors>
<Add Type="WebApplication9.SuccessfulDependencyFilter, WebApplication9">
<!-- Set public property -->
<MyParamFromConfigFile>2-beta</MyParamFromConfigFile>
</Add>
</TelemetryProcessors>
但是自定义属性仍然是“1.2-beta”,没有更改
在我看来,applicationinsightconfig将在应用程序运行时加载。因此,如果您更改了applicationinsightconfig设置,它将在应用程序重新启动后生效。您是否有任何文档链接可供参考。我没有找到任何明确说明此设置的文档。此结果基于我的测试。我在azure上运行了一个web应用程序,并更改了AI配置。应用程序仍然可以正常运行。谢谢@Brando Zhang。我还用我的应用程序测试了这一点,它按预期工作。但是现在搜索一些文档,这就证实了这一点。实际上,我需要决定使用这种方法。根据我的测试,我发现如果您更改applicationinsightconfig文件中的设置,它将在web应用程序重新启动之前无效。