我们刚刚开始使用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属性。
提前致谢
答案 0 :(得分:4)
好的,这比我想象的要容易:
telemetryClient.Context.Cloud.RoleInstance = CustomerId;
希望这有助于某人...