private static string GetTrackingId(IDictionary <string, object> requestProperties, IDictionary <string, string> requestHeaders) { TrackingIdMessageProperty trackingIdMessageProperty; string trackingId; if (!TrackingIdMessageProperty.TryGet <TrackingIdMessageProperty>(requestProperties, out trackingIdMessageProperty)) { if (!TrackingContext.TryGetHeader(requestHeaders, "TrackingId", out trackingId)) { if (!requestHeaders.ContainsKey("MessageId")) { Guid guid = Guid.NewGuid(); trackingId = TrackingContext.AppendRoleInstanceInformationToTrackingId(guid.ToString()); TrackingIdMessageProperty.TryAdd(requestProperties, trackingId); } else { UniqueId uniqueId = new UniqueId(requestHeaders["MessageId"]); Guid trackingId1 = TrackingContext.GetTrackingId(uniqueId); trackingId = TrackingContext.AppendRoleInstanceInformationToTrackingId(trackingId1.ToString()); } } TrackingIdMessageProperty.TryAdd(requestProperties, trackingId); } else { trackingId = trackingIdMessageProperty.Id; } return(trackingId); }
private static string GetSystemTracker(IDictionary <string, object> messageProperties, IDictionary <string, string> messageHeaders) { string tracker; SystemTrackerMessageProperty systemTrackerMessageProperty; string str; if (!SystemTrackerMessageProperty.TryGet <SystemTrackerMessageProperty>(messageProperties, out systemTrackerMessageProperty)) { tracker = (!TrackingContext.TryGetHeader(messageHeaders, "SystemTracker", out str) ? string.Empty : str); } else { tracker = systemTrackerMessageProperty.Tracker; } return(tracker); }