private ApiEvent InitializeApiEvent(string accountId) { ApiEvent apiEvent = new ApiEvent( AuthenticationRequestParameters.RequestContext.Logger, ServiceBundle.PlatformProxy.CryptographyManager, AuthenticationRequestParameters.RequestContext.CorrelationId.AsMatsCorrelationId()) { ApiId = AuthenticationRequestParameters.ApiId, ApiTelemId = AuthenticationRequestParameters.ApiTelemId, AccountId = accountId ?? "", WasSuccessful = false }; foreach (var kvp in AuthenticationRequestParameters.GetApiTelemetryFeatures()) { apiEvent[kvp.Key] = kvp.Value; } if (AuthenticationRequestParameters.AuthorityInfo != null) { apiEvent.Authority = new Uri(AuthenticationRequestParameters.AuthorityInfo.CanonicalAuthority); apiEvent.AuthorityType = AuthenticationRequestParameters.AuthorityInfo.AuthorityType.ToString(); } // Give derived classes the ability to add or modify fields in the telemetry as needed. EnrichTelemetryApiEvent(apiEvent); return(apiEvent); }
private ApiEvent InitializeApiEvent(string accountId) { ApiEvent apiEvent = new ApiEvent( AuthenticationRequestParameters.RequestContext.Logger, ServiceBundle.PlatformProxy.CryptographyManager, AuthenticationRequestParameters.RequestContext.CorrelationId.AsMatsCorrelationId()) { ApiId = AuthenticationRequestParameters.ApiId, ApiTelemId = AuthenticationRequestParameters.ApiTelemId, AccountId = accountId ?? "", WasSuccessful = false }; foreach (var kvp in AuthenticationRequestParameters.GetApiTelemetryFeatures()) { apiEvent[kvp.Key] = kvp.Value; } if (AuthenticationRequestParameters.AuthorityInfo != null) { apiEvent.Authority = new Uri(AuthenticationRequestParameters.AuthorityInfo.CanonicalAuthority); apiEvent.AuthorityType = AuthenticationRequestParameters.AuthorityInfo.AuthorityType.ToString(); } apiEvent.IsTokenCacheSerialized = !AuthenticationRequestParameters.CacheSessionManager.TokenCacheInternal.UsesDefaultSerialization && AuthenticationRequestParameters.CacheSessionManager.TokenCacheInternal.IsTokenCacheSerialized(); apiEvent.IsLegacyCacheEnabled = AuthenticationRequestParameters.RequestContext.ServiceBundle.Config.LegacyCacheCompatibilityEnabled; apiEvent.CacheInfo = (int)CacheInfoTelemetry.None; // Give derived classes the ability to add or modify fields in the telemetry as needed. EnrichTelemetryApiEvent(apiEvent); return(apiEvent); }