如何使用Application Insights覆盖或忽略cloud_RoleInstance

时间:2017-03-17 15:23:55

标签: c# asp.net-mvc wpf azure-application-insights

我们刚刚开始使用Application Insights。尽管这主要是针对在云中运行的应用程序构建的,但我们还使用它来跟踪WPF客户端的一些使用情况统计信息。

对于此安装,我们不希望跟踪 cloud_RoleInstance 中的计算机名称。这是我们的隐私政策问题。存储机器名称甚至在较小的公司中变得更加关键,机器名称可能是用户的名称。至少在我们的市场中,这是不行的。

这就是为服务器和WPF客户端设置遥测客户端的方法。

TelemetryClient telemetryClient = new TelemetryClient() { InstrumentationKey = ApplicationInsightsHelper.InstrumentationKey };

//do not track username...
//telemetryClient.Context.User.Id = Environment.UserName;
telemetryClient.Context.Session.Id = SessionId.ToString();

telemetryClient.Context.Device.OperatingSystem = GetWindowsFriendlyName();

telemetryClient.Context.Component.Version = Version;
telemetryClient.Context.Properties.Add("ComponentName", ComponentName);
telemetryClient.Context.Properties.Add("CustomerId", CustomerId);

现在我的问题是如何设置遥测客户端来删除,混淆,覆盖cloud_RoleInstance属性。

提前致谢

1 个答案:

答案 0 :(得分:4)

好的,这比我想象的要容易:

telemetryClient.Context.Cloud.RoleInstance = CustomerId;

希望这有助于某人...