我正在使用應用程序洞察SDK來記錄異常。我在applicationisightconfig文件中設置排除/包含事件類型列表。applicationinsightConfig會導致應用程序回收
我的問題是,如果我更改applicationinsightconfig文件以在運行時更新排除列表事件列表,它是否會回收應用程序域。
我正在使用應用程序洞察SDK來記錄異常。我在applicationisightconfig文件中設置排除/包含事件類型列表。applicationinsightConfig會導致應用程序回收
我的問題是,如果我更改applicationinsightconfig文件以在運行時更新排除列表事件列表,它是否會回收應用程序域。
我的問題是,如果我更改applicationinsightconfig文件以在運行時更新排除列表事件列表,它是否會回收應用程序域。
根據我的測試,如果在applicationisightconfig文件中將applicationinsightconfig更改爲排除/包含事件類型列表。它不會影響你的Web應用程序。
Web應用程序仍然可以正常工作。
TelemetryConfiguration類將atuo獲取運行的參數(您在.config中設置)。
更新:根據我的測試
,我發現,如果你在applicationinsightconfig文件中更改設置,也不會是有效的,直到Web應用程序重新啓動。
根據這article,我創建了一個自定義的處理器來過濾遙測和註冊與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>
它會根據applicationinsightconfig文件添加一個自定義類型。
應用啓動後,我改變了如下設置:
但自定義屬性仍然是「1.2測試版」,沒有改變。
在我看來,該applicationinsightconfig將應用程序運行時加載。因此,如果您更改了applicationinsightconfig設置,它將在應用程序重新啓動後生效。
你有任何文檔鏈接引用。 –
我沒有找到任何明確說明它的文檔。 –
這個結果是基於我的測試。我已經在Azure上運行了一個Web應用程序並更改了AI配置。應用程序仍然可以運行良好。 –