gpt4 book ai didi

azure - 将自定义属性添加到所有 Application Insight 跟踪

转载 作者:行者123 更新时间:2023-12-03 01:41:53 25 4
gpt4 key购买 nike

我想向 Application Insights 中的所有跟踪添加自定义属性。

在 Asp.Net Core 中我添加了这段代码

internal class TelemetryProperties : ITelemetryInitializer
{
private IConfiguration configuration;

public TelemetryProperties(IConfiguration configuration)
{
this.configuration = configuration;
}

// TODO: Not being added to all traces.
// http://apmtips.com/blog/2014/12/01/telemetry-initializers/
public void Initialize(ITelemetry telemetry)
{
var applicationName = configuration["Application:Name"];
telemetry.Context.Properties.Add("Application", applicationName);
}
}

在 Startup.cs 的配置方法中我添加了:

TelemetryConfiguration.Active.TelemetryInitializers.Add(new TelemetryProperties(Configuration));

目的是将“应用程序”添加到所有跟踪,甚至是由 Application Insights 自动生成的跟踪,但效果是它仅添加到我通过代码调用的自定义跟踪中。

如何向所有跟踪添加属性,即使是我没有创建的跟踪。

编辑:这样做的目的是我希望在同一个应用程序洞察日志中拥有多个 API,但我希望能够在必要时通过添加定义属性(例如应用程序名称)进行分区。

最佳答案

在 Asp.Net Core 应用程序中,不推荐修改 TelemetryConfiguration.Active 方法。您可以使用 ConfigureServices 中的以下代码添加遥测初始化程序吗? ?

services.AddSingleton<ITelemetryInitializer, TelemetryProperties>();

https://github.com/Microsoft/ApplicationInsights-aspnetcore/wiki/Custom-Configuration#adding-new-telemetryinitializer

请告诉我这是否有帮助。

关于azure - 将自定义属性添加到所有 Application Insight 跟踪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52326335/

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