/// <summary> /// Convert the given <paramref name="logEvent"/> to a series of <see cref="ITelemetry"/> instances. /// </summary> /// <param name="logEvent">The event containing all relevant information for an <see cref="ITelemetry"/> instance.</param> /// <param name="formatProvider">The instance to control formatting.</param> public override IEnumerable <ITelemetry> Convert(LogEvent logEvent, IFormatProvider formatProvider) { if (logEvent.Exception != null) { return(_exceptionTelemetryConverter.Convert(logEvent, formatProvider)); } if (logEvent.Properties.ContainsKey(ContextProperties.RequestTracking.RequestLogEntry)) { return(_requestTelemetryConverter.Convert(logEvent, formatProvider)); } if (logEvent.Properties.ContainsKey(ContextProperties.DependencyTracking.DependencyLogEntry)) { return(_dependencyTelemetryConverter.Convert(logEvent, formatProvider)); } if (logEvent.Properties.ContainsKey(ContextProperties.EventTracking.EventLogEntry)) { return(_eventTelemetryConverter.Convert(logEvent, formatProvider)); } if (logEvent.Properties.ContainsKey(ContextProperties.MetricTracking.MetricLogEntry)) { return(_metricTelemetryConverter.Convert(logEvent, formatProvider)); } return(_traceTelemetryConverter.Convert(logEvent, formatProvider)); }
/// <summary> /// Convert the given <paramref name="logEvent"/> to a series of <see cref="ITelemetry"/> instances. /// </summary> /// <param name="logEvent">The event containing all relevant information for an <see cref="ITelemetry"/> instance.</param> /// <param name="formatProvider">The instance to control formatting.</param> public override IEnumerable <ITelemetry> Convert(LogEvent logEvent, IFormatProvider formatProvider) { if (logEvent.Exception != null) { return(_exceptionTelemetryConverter.Convert(logEvent, formatProvider)); } if (logEvent.MessageTemplate.Text.StartsWith(MessagePrefixes.RequestViaHttp)) { return(_requestTelemetryConverter.Convert(logEvent, formatProvider)); } if (logEvent.MessageTemplate.Text.StartsWith(MessagePrefixes.Dependency)) { return(_customDependencyTelemetryConverter.Convert(logEvent, formatProvider)); } if (logEvent.MessageTemplate.Text.StartsWith(MessagePrefixes.DependencyViaHttp)) { return(_httpDependencyTelemetryConverter.Convert(logEvent, formatProvider)); } if (logEvent.MessageTemplate.Text.StartsWith(MessagePrefixes.DependencyViaSql)) { return(_sqlDependencyTelemetryConverter.Convert(logEvent, formatProvider)); } if (logEvent.MessageTemplate.Text.StartsWith(MessagePrefixes.Event)) { return(_eventTelemetryConverter.Convert(logEvent, formatProvider)); } if (logEvent.MessageTemplate.Text.StartsWith(MessagePrefixes.Metric)) { return(_metricTelemetryConverter.Convert(logEvent, formatProvider)); } return(_traceTelemetryConverter.Convert(logEvent, formatProvider)); }