internal TelemetryMessage(TelemetryMessageModel messageDeserialize, IWorkContext context) { messageDeserialize = messageDeserialize ?? throw new ArgumentNullException(nameof(messageDeserialize)); context = context ?? throw new ArgumentNullException(nameof(context)); MessageId = messageDeserialize.MessageId; EventDate = messageDeserialize.EventDate; WorkContext = context; TelemetryType = messageDeserialize.TelemetryType; EventSourceName = messageDeserialize.EventSourceName; EventName = messageDeserialize.EventName; Message = messageDeserialize.Message; Duration = messageDeserialize.Duration; Value = messageDeserialize.Value; EventDimensions = new EventDimensions(messageDeserialize.Dimensions?.Select(x => x) ?? Standard.EventDimensions.Empty) + context.Dimensions; }
public static string ConvertToJson(this TelemetryMessage message) { var model = new TelemetryMessageModel { MessageId = message.MessageId, EventDate = message.EventDate, Cv = message.WorkContext.Cv, Tag = message.WorkContext.Tag, TelemetryType = message.TelemetryType, EventSourceName = message.EventSourceName, EventName = message.EventName, Message = message.Message, Duration = message.Duration, Value = message.Value, Dimensions = message.EventDimensions.ToDictionary(x => x.Key, x => x.Value), Exception = message.Exception, }; return(JsonConvert.SerializeObject(model)); //return JsonSerializer.Serialize(model); }