public ProfilerHttpProcessing(TelemetryConfiguration configuration, string agentVersion, ObjectInstanceBasedOperationHolder telemetryTupleHolder, bool setCorrelationHeaders, ICollection<string> correlationDomainExclusionList)
{
if (configuration == null)
{
throw new ArgumentNullException("configuration");
}
if (telemetryTupleHolder == null)
{
throw new ArgumentNullException("telemetryTupleHolder");
}
if (correlationDomainExclusionList == null)
{
throw new ArgumentNullException("correlationDomainExclusionList");
}
this.applicationInsightsUrlFilter = new ApplicationInsightsUrlFilter(configuration);
this.TelemetryTable = telemetryTupleHolder;
this.telemetryClient = new TelemetryClient(configuration);
this.correlationDomainExclusionList = correlationDomainExclusionList;
this.setCorrelationHeaders = setCorrelationHeaders;
// Since dependencySource is no longer set, sdk version is prepended with information which can identify whether RDD was collected by profiler/framework
// For directly using TrackDependency(), version will be simply what is set by core
string prefix = "rdd" + RddSource.Profiler + ":";
this.telemetryClient.Context.GetInternalContext().SdkVersion = SdkVersionUtils.GetSdkVersion(prefix);
if (!string.IsNullOrEmpty(agentVersion))
{
this.telemetryClient.Context.GetInternalContext().AgentVersion = agentVersion;
}
}